考虑下面这个简单的代码:
"use strict";
var obj = {
f: function() {
this.prop = 'value';
g.bind( this )();
}
};
function g() {
console.log( this.prop );
}
如果我尝试验证这段代码,在调用console.log( this.prop );
的地方,jshint会给出错误Possible strict violation.
。这是因为this
在函数的严格模式下是未定义的。
但是我在调用这个函数之前绑定了它,所以this
是正确的对象。
我使用这个“设计模式”来避免弄乱主对象。在参数中传递属性也会使函数变得混乱,所以我拒绝这样做。此外,这正是bind
的作用所在。
有没有办法让JSHint让我这么做?
https://stackoverflow.com/questions/12057427
复制相似问题