.call() .apply() .bind()方法

论坛 期权论坛 脚本     
已经匿名di用户   2021-12-20 01:35   4164   0
function yo(name,a) {
    console.log('yo!' + name + ',我是: ' +  this.name)
}

var whh = {
    name: '王花花'
}
var lsd = {
    name: '李栓蛋'
}
var bad = {
    name: 'Bind不是立即执行,它是返回一个新的function'
}

yo.call(whh,'我是参数1') // 相当于让yo这个方法的this指向whh这个变量,接下来传的就是参数了
yo.apply(lsd,['赵可爽']) // call 和 apply都是改变this指向 , 传参不同,都是立即调用
var yoBind = yo.bind(bad,'赵可爽(参数name)') // bind不是立即调用,而是保存在变量中,想用的时候再调用
yoBind()
复制代码

转载于:https://juejin.im/post/5b6ff7b5e51d456662761492

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP