Рассмотрим этот простой код:
"use strict";
var obj = {
f: function() {
this.prop = 'value';
g.bind( this )();
}
};
function g() {
console.log( this.prop );
}
Если я попытаюсь проверить этот код, jshint дает мне ошибку Possible strict violation.
, где я вызываю console.log( this.prop );
. Это связано с тем, что this
undefined в строгом режиме в функции.
Но я связываю эту функцию перед ее вызовом, поэтому this
- правильный объект.
Я использую этот "шаблон дизайна", чтобы избежать загромождения основного объекта. Передача свойств в параметрах также загромождает функцию, поэтому я отказываюсь это делать. Кроме того, это именно то, что bind
для.
Есть ли способ, чтобы JSHint позволил мне сделать это?