js
ayao_00
这个作者很懒,什么都没留下…
展开
-
深拷贝与浅拷贝,如何进行浅拷贝和?
1.浅拷贝:浅拷贝是只拷贝这个对象的指针,而不是对象本身,新旧对象共用同一个内存地址,修改新对象会影响旧对象。let obj = { id: 1, name: 'Andy', msg: { age: 20 }}let o = {}for (let k in obj) { o[k] = obj[k]}console.log(o)//语法糖浅拷贝:Object.assign(o, obj)2.深拷贝:深拷贝就是新建一个一模一样的对象原创 2020-08-11 09:43:54 · 250 阅读 · 0 评论 -
如何使用闭包?闭包的主要作用是什么?
1.闭包是什么?闭包就是一个作用域访问了另外一个函数内部的作用域变量//fun函数可以访问fn函数内部的num变量function fn () { let num = 10 function fun () { console.log(num) } fun() }fn()2.闭包的主要作用是什么?第一种写法:function fn1() { let n = 1 function fn2() { console.log(n) } // 直接将fn2函原创 2020-08-02 20:41:02 · 314 阅读 · 0 评论 -
apply和call方法的区别?各自有什么特点?
1.apply方法的使用//改变this的指向let o = {name: 'Andy'}function fn(a,b) { console.log('你好呀') console.log( a + b)}fn.call(o, 2,7)//用call实现继承Fucntion Father(name,age) { this.name = name; this.age = age } Father.prototype.sing = function() { conso原创 2020-07-25 14:41:52 · 177 阅读 · 1 评论