【发布时间】:2011-01-08 06:07:15
【问题描述】:
我正在使用 Firefox 3.5.7 并且在 Firebug 中我正在尝试测试 array.reduceRight 函数,它适用于 简单数组 但是当我尝试类似的操作时,我得到了一个 NaN。为什么?
>>> var details = [{score : 1}, {score: 2}, {score: 3}];
>>> details
[Object score=1, Object score=2, Object score=3]
>>> details.reduceRight(function(x, y) {return x.score + y.score;}, 0)
NaN
我也试过 map ,至少我可以看到每个元素的 .score 组件:
>>> details.map(function(x) {console.log (x.score);})
1
2
3
[undefined, undefined, undefined]
我阅读了https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduceRight 的文档,但显然我无法将 details 数组中的所有 score 值相加。为什么?
【问题讨论】:
标签: javascript firefox functional-programming reduce