我不了解许多underscore.js函数的上下文变量的用途。它有什么作用。我知道它在迭代器回调中绑定(bind)了“this”,但我不了解它的实际应用。
var context = {'a': 'a'};
_.each([1, 2, 3], function(element, index, list)
{
console.log(this);
console.log(element);
console.log(index);
console.log(list);
}, context);
最佳答案
下划线的_.each
看起来像这样:_.each(list, iterator, [context])
当迭代器是已创建的某些对象的成员,并且您希望在对象而不是窗口的范围内执行该功能时,上下文非常有用。如果要用作迭代器的预写函数使用this
引用对象的实例(通常是这种情况),则在没有上下文的情况下调用该函数将导致this
引用错误的内容。