【发布时间】:2014-01-16 00:41:38
【问题描述】:
有没有下划线(lo-dash)的简单神奇的函数组合来实现以下算法:
var arr = [1, 4, 9, 16, 25];
var result = [];
for(var i = 1, len = arr.length; i < len; ++i) {
var current = arr[i];
var previous = arr[i-1];
result[i-1] = current - previous;
}
// result == [3, 5, 7, 9]
使用更简单的语法:
var arr = [1, 4, 9, 16, 25];
var result = _.???(arr, function(current, previous) {
return current - previous;
}
?
注意事项:
- 我不想滚动自己的函数,我宁愿使用现有方法的组合。
- 显然我的数组包含对象而不是数字,结果可能是也可能不是数字列表。
【问题讨论】:
标签: javascript algorithm iteration underscore.js