0
我正在將代碼庫從Underscore 1.8.2遷移到lodash 4.5.1。有一次測試在遷移後失敗。Underscore和LoDash _.each
正在測試的代碼是使用_.each
的遞歸求和。
function foo(elements) {
if (elements.isContainer()) {
var sum = 0;
_.each(elements, function(element) {
sum += foo(element);
});
return sum;
} else {
return elements.someAttr ? 1 : 0;
}
}
測試以與陣列應爲空,0
有望作爲結果。 underscore.each
成功,但lodash沒有(返回正值)。
我用return _.sumBy(...
替換了_.each(...
,並通過了測試,但我擔心代碼庫中可能存在更多的休眠問題。
任何有關這兩個庫之間的差異會導致這種情況的想法?
什麼是「元素」? – dandavis