火哥算法六大商业实战项目课
let obj = {
init() {
console.log( this )
let prop = {
init: () => {
console.log( this )
},
bind() {
console.log( this )
}
}
prop.init()
prop.bind()
}}obj.init()
上述中的 this
会打印出什么呢?
let obj = {
init() {
console.log( this ) // 2. this === obj
let prop = {
init: () => {
console.log( this ) // 4. this === prop 同级 this ==> this === obj
},
bind() {
console.log( this ) // 6. this === prop
}
}
prop.init() // 3. init() 是箭头函数 ==> prop.init.call( prop 同级 this )
prop.bind() // 5. bind 不是箭头函数 ==> prop.bind.call( prop )
}}obj.init() // 1. === obj.init.call( obj )