Underscore.js имеет два способа вызова функций, которые я буду называть объектными и функциональными. Объектный стиль выглядит следующим образом:
_(myObject).each(function (val, key) {
console.log(key, val);
});
Функциональный стиль, с другой стороны, выглядит следующим образом:
_.each(myObject, function (val, key) {
console.log(key, val);
});
Я с радостью использовал вызовы в стиле объектов в моем коде, но в какой-то момент стиль объекта вызова исчез из документации underscore.js(хотя вызовы в стиле объектов все еще работают отлично). Я также видел подсказки вокруг места (например, в документации backbone.js), что стиль функции "лучше" или "предпочтительнее".
Итак, является ли стиль функции предпочтительным методом? И если да, может кто-нибудь объяснить причины этого?
Обновление: @ggozad частично ответил на мой вопрос. Но, похоже, мое понимание того, как работают underscore.js, было обращено назад к версии 0.4.2. Прочитав историю изменений для underscore.js, вы можете увидеть эту запись для версии 1.2.4:
Теперь вы можете (и, вероятно, должны) написать
_.chain(list)
вместо_(list).chain()
.
Я хотел бы знать, почему вы должны писать _.chain(list)
вместо _(list).chain()
.