我要保持这种解释很简单。
Math.max(1, 5)
返回本例中最大的数字5。
传递前面的结果基本上都是通过一个数组来经过。例如:
[1,2,3,4,5].reduce(function (prevNum, currentNum) {
return {{number to send to the next iteration as prevNum}};
});
所以,如果你把两者结合起来,减少将通过每一个数字数组中,并返回发现的最大数量。
[1,2,3,4,5].reduce(function (prevNum, currentNum) {
return Math.max(prevNum, currentNum);
});
映射将经过一个数组并创建一个新的数组,每个索引都是传递函数的返回值。
[1,2,3,4,5].map(function (currentNum) {
return currentNum + 1;
});
// this would return [2,3,4,5,6] because I added 1 to each number in the array
在从书的例子中,在使用map
每一行rowHeights
功能基本上迭代,并且使用reduce
返回单元的行的最大高度在表中。这个结果基本上是一个最大高度的数组,我假设它将用于设置每行的最小高度,如作者所述。
这个解释很好。我想我现在明白了。 – PositivelyDoped 2015-02-12 12:17:52