自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue的v-model的原理和实现

v-model就是vue的双向绑定指令,能将页面上空间输入的值同步更新到相关绑定的属性,也会在更新data绑定属性的时候,更新页面上输入控件的值 v-model作为双向绑定指令也是vue两个核心功能之一,使用非常方便,提高前端开发效率,在view层,model层相互需要数据交互,即可使用v-model v-model的原理: v-model主要实现了两个功能,view层输入值影响data的属性值,data属性值发生改变会更新view层数值变化 1.input 输入值后更新data 首先在页面初始化

2022-05-21 17:24:28 6677 1

原创 JS防抖和节流

防抖策略(debounce):是当时间被触发后,延迟n秒后再执行回调,如果在这n秒内事件又被触发,则重新计时 好处:能够保证用户在频繁触发某些事件的时候,不会频繁的执行回调,只会被执行一次 场景:用户在输入框中连续输入一串字符串时,可以通过防抖策略,只在输入完成时,才执行查询的请求,这样可以有效的减少请求次数,节约请求资源 防抖的实现: function antiShake(fn,wait){ let timeOut = null; return args=>{

2022-05-20 18:44:14 163

原创 闭包的原理和优缺点

let makeCounter = function () { let num = 0; function changeBy(val) { num += val } //给你返回什么,你才能拿什么 return { add: function () { changeBy(1) }, reduce: function () { changeBy(.

2022-05-20 15:09:03 5731

原创 深拷贝和浅拷贝,以及深拷贝的实现,深拷贝和浅拷贝的区别

1.对于基本数据类型,严格意义上来说是赋值 let a = 5; let b = a; b = 3; console.log(a, b); 2.对于数组和对象的赋值都叫做浅拷贝 let arr = [1, 2, 3]; let newArr = arr; newArr.push(4) //改变了newArr原数组也的到了改变 console.log(newArr); //1,2,3,4 console.log(ar

2022-05-20 15:00:25 255

原创 null和undefined的区别

1.定义 undefined:是所有没有被赋值的变量的默认值,自动赋值 null:主动释放一个变量引用的对象,表示一个变量不在指向任何对象地址 2.何时使用null 当使用玩一个比较大的对象时,需要对其进行释放内存,设置为null 3.null和undefined的异同点 同:都是原始数据,保存在栈中变量本地 异: undefined表示声明过但是并未赋值 null表示一个变量将来可能指向一个对象,一般用于主动...

2022-05-20 14:33:56 274

原创 JS中区分数组和对象

1.通过调用constructor来识别 {}.constructor //返回object [].constructor //返回Array 2.通过instance of 来识别 [] instance of Array //true {} instance of Array //false 3.通过Object.prototype.toString.call方法来识别 Object.prototype.toS...

2022-05-20 14:24:41 94

原创 JS判断对象是否为空对象的几种方法

1.通过json将对象转化为字符串,在判断该字符串是否==='{}' var obj = {}; var str = (JSON.stringify(obj)=="{}"); if(str=='{}') return true; return false 2.for in 循环来判断 var obj = {}; var a = function(){ for(var key in obj){ return false; } return true; } 3

2022-05-20 14:18:35 1978

原创 JS中的数组方法

push()和pop() 添加元素/弹出元素 shift() 和 unshift() 删除原数组第一项/将参数添加到原数组的开头 sort() 按升序排列数组项 reverse() 反转数组项的顺序 concat() 将参数添加到原数组中 slice() 返回从原数组中指定开始下标之间的项组成新的数组 ...

2022-05-20 13:56:29 72

空空如也

空空如也

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

TA关注的人

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