我有办法在JavaScript中的map
函数中获取每个项目的序列号吗?
例如,我有一个包含5个项目的数组,并希望在以下代码中将每个项目的序列号传递给我的React组件:
{toDoList.map(item => <ToDoItem key={item.id} sequenceNumber={???} data={item} />)}
答案 0 :(得分:3)
当你使用.map
时,你的函数实际上会传递3个参数:数组项,它的索引和数组本身。 See more here.
因此该索引应适用于您的序列号:
{toDoList.map((item, index) =>
<ToDoItem key={item.id} sequenceNumber={index} data={item} />)}
答案 1 :(得分:2)
map中回调函数的三个参数是元素,索引和数组本身,所以你只需要给回调函数提供第二个参数,如:
var arr = [1,2,3,4];
arr.map((num, index) => console.log(num + " " + index));
&#13;
所以在你的情况下它将是:
{toDoList.map((item, index) => <ToDoItem key={item.id} sequenceNumber={index} data={item} />)}
答案 2 :(得分:0)
它是回调的第二个参数。
[101,102,103].map((a,b)=>b)
给出[0,1,2]