自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 单例模式的理解?单例模式如何实现?单例模式应用场景

单例模式(Singleton Pattern):创建型模式,提供了一种创建对象的最佳方式,这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。的时候,只有用户点击的时候才会创建,而不是加载完成之后再创建弹窗和隐藏,并且保证弹窗全局只有一个。现在很多第三方库都是单例模式,多次引用只会使用同一个对象,如。上述这种实现称为惰性单例,意图解决需要时才创建类实例对象。在前端中,很多情况都是用到单例模式,例如页面存在一个。// 原型扩展类的一个方法getName()

2023-02-08 07:42:10 134

原创 自定义指令

自定义指令:vue除了核心指令外,还允许我们自己定义指令,主要是对dom元素进行底层的操作自定义指令 分为 全局的 和 局部的局部的:directives全局的: Vue.derietive('名称',{})bind -- 指令绑定 绑定到元素的时候调用 只执行一次inserted:被绑定元素插入父节

2023-02-06 21:43:07 87 1

原创 什么是闭包?优缺点是什么?使用场景有哪些?

适⽤场景:封装组件,for循环和定时器结合使⽤,for循环和dom事件结合.可以在性能优化的过程中,节流,防抖函数的使⽤,导航栏获取下标的使⽤。答:闭包说的通俗⼀点就是打通了⼀条在函数外部访问函数内部作⽤域的通道。正常情况下函数外部是访问不到函数内部作⽤域变量的,表象判断是不是闭包:函数嵌套函数,内部函数被return 内部函数调⽤外层函数的局部变量。缺点:由于闭包⻓期驻留内存,则⻓期这样会导致内存泄露。如何解决内存泄露:将暴露全外部的闭包变量置为null。优点:可以隔离作⽤域,不造成全局污染。

2022-10-08 22:18:41 164

原创 如何理解 this 的本质?(5种):

匿名函数的this指向全局的Window对象:但是我们如何在匿名函数中获取user对象?// this指向全局的Window对象。方式二:通过闭包的方式来实现:什么是闭包:子函数可以去访问父函数的局部变量。* (5)箭头函数的this指向父级的作用域,箭头函数没有this。* (2)当函数作为对象的方法调用的时候,this指向该对象。* (1)全局函数的this指向全局的Window对象。* (4)匿名函数的this指向全局的Window对象。* (3)构造函数的this指向实例化的对象。

2022-10-08 22:17:44 81

原创 .箭头函数和普通函数有什么不同?箭头函数有什么缺点?什么时候不能使用箭头函数?

在es6中,提供了⼀种简洁的函数写法,我们称作“箭头函数”。(箭头函数相当于匿名函数,并且简化了函数定义。写法:函数名=(形参)=>{……} 当函数体中只有⼀个表达式时,{}和return可以省略,当函数体中形参只有⼀个时,()可以省略。但是包含多条语句,这时候就不能省略{ ... }和return。)特点:箭头函数中的this始终指向箭头函数定义时的离this最近的⼀个函数,如果没有最近的函数就指向window。

2022-10-08 22:17:09 213

原创 简述 Ajax、Fetch、Axios 三者有什么区别?

AJAX 全称(Async Javascript and XML) 即异步的 JavaScript 和 XML ,是⼀种创建交互式⽹⻚应⽤的⽹⻚开发技术,可以在不重新加载整个⽹⻚的情况下,与服务器交换数据,并且更新部分⽹⻚Ajax 的原理简单来说通过 XmlHttpRequest 对象来向服务器发异步请求,从服务器获得数据,然后⽤ JavaScript 来操作 DOM ⽽更新⻚⾯。fetch号称是AJAX的替代品,是在ES6出现的,使用了ES6中的promise对象。ajax是异步请求的统称。

2022-10-08 22:15:39 520

原创 setTimeout()和setInterval()的区别

2.setTimeout()在指定的毫秒数后就会执行,而setInterval()则在每隔指定的毫秒数执行。也就是说setTimeout()执行一次,而setInterval()可以循环执行。1.一般情况下setTimeout()用于延迟执行某方法或功能,setInterval()则一般用于刷新表单,对于一些表单的假实时指定时间刷新同步。通常我们使用setTimeout()和setInterval()来创建定时器。

2022-10-08 22:14:51 1139

原创 回调函数 VS Promise VS Async/Await

Promise 主要是 then 方法的链式调用,是一种从左到右的横向写法。所以 Promise 比回调函数更加优雅。Async/Await 是从上到下,顺序执行,这更像在写同步代码,这更符合编写代码的习惯。回调函数是异步编程的最基本方案,但最大的缺点就是层层嵌套,容易写出“回调地狱”的代码。异步编程的最高境界,就是根本不用关心它是不是异步。

2022-10-08 22:13:43 86

原创 前端使用异步的场景有哪些?

img.onload=function(){ //callback的形式。定时任务,如setTimeout、setInterval。1.网络请求,如 ajax请求、图片加载。

2022-10-08 22:00:21 568

原创 【无标题】

1.git init 初始化仓库(设置用户名和邮箱)进入根目录 cd ~查看用户名和密码 cat .gitconfig删除/修改用户名和密码 vim .gitconfig退出 命令行 esc :wq :!q强制退出2.git status 查看状态3.git add . 将工作区内容提交到暂存区(git rm --cached 文件名`从暂存区删除,恢复到工作区)4.git commit -m 'feat:本次添加说明'

2022-10-08 21:52:03 147

原创 git 基础使用

1.git init 初始化仓库​(设置用户名和邮箱)​进入根目录 cd ~​查看用户名和密码 cat .gitconfig​删除/修改用户名和密码 vim .gitconfig​退出 命令行 esc :wq :!q强制退出​​​2.git status 查看状态​3.git add . 将工作区内容提交到暂存区(git rm --cached 文件名`从暂存区删除,恢复到工作区)4.git commit -m 'feat:本次添加说明'​。

2022-10-08 21:42:46 50

原创 git基础使用

1.git init 初始化仓库(设置用户名和邮箱)进入根目录 cd ~查看用户名和密码 cat .gitconfig删除/修改用户名和密码 vim .gitconfig退出 命令行 esc :wq :!q强制退出2.git status 查看状态3.git add . 将工作区内容提交到暂存区(git rm --cached 文件名`从暂存区删除,恢复到工作区)4.git commit -m 'feat:本次添加说明'

2022-10-08 21:39:56 217

原创 promise

promise ⼀共有三个状态,分别是进⾏中,成功或者失败 如何成功的话可以通过 resolve ⽅法将正确结 果返回出去,通过.then 的⽅式进⾏接受,失败的话可以通过 reject 的⽅式将失败的结果 m出去,通 过.catch 的⽅式进⾏接受,pending 状态是进⾏中,⼀旦进⾏之后,他的状态是不可逆的。(必问) promise 是 es6 提供的一种异步解决方案,在我的理解中 promise 就是把异步操作换了一种写法 从之前的嵌套回调函数 变成了链式的写法。1.2 什么是 promise?

2022-09-06 20:48:16 56

原创 axios 二次封装以及使用方式

先创建一个request.js 文件夹。

2022-08-20 01:12:54 94

原创 axios方法

一 页面 引入 import axios from 'axios' axios.vue项目使用 网络请求 : axios fetch ...npm i axios -S 安装下载。在页面上用 this.$axios.get() 使用。

2022-08-20 01:00:27 240

原创 js的闭包

闭包简单的理解就是函数中套了一个函数,内层函数可以访问外层函数中的变量,让这个变量不会被销毁有时候需要用到函数内的局部变量,在正常情况下是不能读取到的,这个时候就需要用到闭包。闭包可以封装对象的私有属性和方法,vue中的data就是一种闭包的形式。闭包作为回调函数,可以实现函数的复用。可以重复使用变量,不会造成变量污染缺点闭包会使函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,可能会导致内存泄露。解决方法是在退出函数之前,将不使用的变量全部删除。...

2022-08-01 18:59:40 41

原创 JS的作用域

全局作用域就是Js中最外层的作用域函数作用域是js通过函数创建的一个独立作用域,函数可以嵌套,所以作用域也可以嵌套Es6中新增了块级作用域(由大括号包裹,比如if(){},for(){}等)2.自由变量当前作用域外的变量都是自由变量,作用域链就是自己没有这个变量就从上一级作用域查找,直到找到为止,直到找到顶层window,没有的话就报错。1.作用域作用域就是一个变量可以使用的范围,主要分为全局作用域和函数作用域。...

2022-08-01 18:58:00 155

原创 小程序的发布流程

小程序

2022-08-01 18:56:09 531

原创 js知识点

number(数字型)string(字符串)boolean(布尔值) 布尔值的默认值是trueundefined(未定义/赋值)object(对象)function(函数)//或者 &&并且 =代表赋值 ==代表等于 ===代表全等alert()用于弹出框索引下标:[3,4,5,6,]-->3代表0,4代表1,5代表2,6代表3// js的方法对象名.concat().sort() 排序方法.sort( function(a,b){return a-b(升序)/b-a(倒序)} )console.log(

2022-07-06 20:24:48 58

原创 * 7个内置操作方法(变异操作方法)特征: 改变原数组

** push 尾部添加 原数组发生改变 有返回值的 返回的是新数组的长度** pop 尾部删除 原数组发生改变 有返回值的 返回的 删除的元素** shift 头部删除 原数组发生改变 有返回值的 返回的 删除的元素** unshift 头部添加 原数组发生改变 有返回值的 返回的是新数组的长度** splice 本意是删除* 语法:数组.splice(下标,删除的长度,插入的值)** 有返回值的 [删除的元素,删除的元素]** sort 排序** reverse 反转数组...

2022-06-21 14:25:56 68

原创 vuex四个辅助函数

** mapState 将 vuex内的state的数据映射到 页面* 引入* import {mapState} from 'vuex'** computed: {* ...mapState(['num'])* }* mapGetters* 引入* import {mapGetters} from 'vuex'** computed: {* ...mapGetters(['filterPriceNum'])* }** mapMutations* mapActionsmapState mapGetters

2022-06-20 15:03:16 63

原创 什么是vuex

****vuex的状态管理工具 保存公共的数据的vuex五个核心的概念*state:存放数数据(变量)this.$.store.state.属性名getters:计算属性 this,$store.getters.属性名mutations 唯一改变state内数据的方法;同步的方法this,¥store.commit(‘方法名’,参数)actions 异步方法 this.$store.dispatch(‘方法名’,参数)modules 模块化......

2022-06-20 13:44:11 26

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除