- 博客(2)
- 收藏
- 关注
原创 手写call、apply、bind
call、apply、bind 都可以改变函数的this指向 call 接受多个参数,第一个参数代替执行的this,后面的都是函数传入的参数----会立即执行函数 Function.prototype.wcall = function(content = window){ // 给原对象增加一个属性,并赋值给被执行的函数 content.fn = this // 拿到除了第一个参数之外后面的参数 let rest = [...arguments].slice(1) // 拿到函数的执行结果
2021-10-12 15:59:24
36
原创 手写一个new操作符
手写一个new操作符 new操作符的作用: 创建一个新的对象,意思是在内存地址中会开辟一个新的空间 生成的新的对象的__proto__ 会指向构造函数的 prototype 执行构造函数,并将其this指向新对象 返回一个新的对象 实现 function New(func){ // 1. 首先创建一个对象 var res = {} // 2. 判断构造函数的prototype是否存在,存在则将新对象的__proto__ 指向构造函数的prototype if( func.
2021-10-08 11:23:32
80
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人