我正在阅读有关es2015的一些内容,在我遇到此代码时尝试了箭头语法的一些示例:
var odds = evens.map(v => v + 1);//I understand
var nums = evens.map((v,i) => v + i);//I don't understand
将evens
初始化为[0,2,4,6]
我从[1,3,5,7]
得到odds
,我理解。
但是,我不理解第二个表达式[0,3,6,9]
的结果。基本上我不理解在第二个例子中为变量i
分配了什么值。任何人都可以对此有所了解吗?
答案 0 :(得分:5)
Array.prototype.map
函数,将使用三个参数调用传递给它的函数,如here
因此,在您的情况下,v
是当前元素,i
是数组中元素的索引。
使用evens
初始化[0, 2, 4, 6]
时,它只是添加带有相应索引的元素并返回一个新数组。