var obj = {
name :'乔丹',
fn(){
console.log(this.name);
}
}
var obj2 = {
name: '哈登'
}
// obj.fn() //打印乔丹 ,this指向当前对象obj
//obj.fn.call(obj2) // 打印哈登,call改变了this指向,指向了obj2
// obj.fn.bind(obj2) //没有反应,因为bind返回一个函数
// var isBind = obj.fn.bind(obj2)
//isBind() //打印哈登 ,bind改变了this指向。这里需要注意,使用bind改变this指向需要赋值给一个变量完成绑定。bind方法可以预先传一个参数进去,绑定函数的第一个形参
//obj.fn.apply(obj2) //打印哈登,apply改变了this指向。apply方法第二个参数可以传一个数组进去
this指向
最新推荐文章于 2026-01-01 18:01:08 发布
本文介绍JavaScript中this关键字的指向规则及如何通过call、apply和bind方法改变其指向。通过实例展示了不同方法调用对this的影响。
1788

被折叠的 条评论
为什么被折叠?



