js 中方法与参数作用域that/this

2019-08-26  本文已影响0人  bianruifeng
$("#btn").click(function(){
    var that = this;//这里this和that都代表了"#btn"这个对象
    $(".tr").each(function(){
          this;//在这里this代表的是每个遍历到的".tr"对象
          that;//仍代表"#btn"对象
    })
})

this是JS的关键字。代表函数运行时,自动生成的一个内部对象,this代表的是当前对象,只能在函数内部使用.
var that=this就是将当前的this对象复制一份到that变量中

还有---箭头函数---可以解决 that/this 作用域的问题。

fail: () => {
    console.log("Bad session!");
    // 登录态过期
    this.login()
}

没有参数

callback_func_name: () => {
    // do something
}

一个参数 (括号可加,可不加)

callback_func_name: var1 => {
    // do something
}

多个参数

callback_func_name: (var1, var2) => {
    // do something
}
上一篇下一篇

猜你喜欢

热点阅读