var t = [-12, 57, 22, 12, -120, -3];
t.map(Math.abs).reduce(function(current, previousResult) {
return Math.min(current, previousResult);
}); // returns 3
t.map(Math.abs).reduce(Math.min); // returns NaN
我不明白为什么第二个窗体不起作用。欢迎任何解释。JavaScript Map Reduce:怪异行为
编辑:技术上下文:Chrome和Firefox JavaScript引擎。参见ES5减少http://www.ecma-international.org/ecma-262/5.1/#sec-15.4.4.21
这是“在浏览器中”,我更新了我的答案。 – AsTeR 2013-04-03 22:07:13
@AsTeR:具体而言,尚未广泛实施的[ES5'reduce'](http://www.ecma-international.org/ecma-262/5.1/#sec-15.4.4.21)。 – 2013-04-03 22:09:58