目录
2. 隐式绑定规则:谁调用就指向谁;(存在隐式丢失,参数赋值的情况)
this的本质就只“建立好的对象的地址”
console.log (this === window) //true
console.log({} === {}) //false
在函数中 this 也是 window,函数的独立调用,this默认指向window
obj调用,指向obj
闭包:当函数 执行函数的时候,导致函数被定义,并被抛出;闭包是一个现象
bar 是持有obj.foo 的引用,d当方法被赋值时,这个现象,叫做隐式丢失
链式调用的时候,this 指向的永远是紧跟着的上一个调用者
每一个函数在执行的时候,都会有自身的this 指向
参数赋值的情况:指向window。预编译的时候,形参和实参有一个赋值的过程,实参被赋值为形参;(值的拷贝的过程,浅拷贝)
一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数:bar
父函数有能力决定子函数的this 指向
forEach 中 的第二个参数是决定 this 指向的参数
子函数:回调函数
区别:
undefined null 没有包装类,则绑定失败,会采用默认的绑定方式:即指向window:
4. new 绑定
this 的重写:
this 的指向:只需要关心当前的调用方式:
明天:es6特性,css预处理, 设计模式,ecma 函数的预编译五步