javascript - Javascript 中的 .bind(this) 与 var context = this - 最好的风格是什么?

标签 javascript asynchronous callback this

这是一个风格问题,也许是主观的。

哪个更适合用于可读的标准代码?

A:“var context = this”

var object = {
  foo: 'bar',
  method: function(){  
    var context = this;
    $.get('/some/async/api', function (req, res){
      console.log(context.foo);  //==> bar
    });
  }
}

B:“.bind(this)”

var object = {
  foo: 'bar',
  method: function(){  
    $.get('/some/async/api', (function (req, res){
      console.log(this.foo);  //==> bar
    }).bind(this));
  }
}

最佳答案

我更喜欢第一种格式,因为它简单而高效。 zone.js是一个很棒的用于范围界定的库。

关于javascript - Javascript 中的 .bind(this) 与 var context = this - 最好的风格是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33383430/

相关文章:

javascript - 我如何使用ajax和php替换div

javascript - React Native : App Store Rejection, 支持 IPv6

c# - 如果该方法已经是异步的,我是否应该进行快速异步操作

ios - handleTurnEventForMatch :didBecomeActive: callbacks only arriving some of the time

WCF - 推荐客户端回调?

javascript - jquery 双功能each

javascript - 使用复选框的 "onclick"时防止默认操作的简单方法?

java - 使用 JAX-RS 处理异步 http 请求?

javascript - 异步函数在等待嵌套的 Promise 完成时永远不会返回

javascript - 我可以在控制台中看到数据,但无法获取它。 React 中的父子回调