文章详情页
javascript - 弱弱的问一下,_map(data,(item,i)=>{})与_each(data,(item,i)=>{})里的i是干什么的?
问题描述
如题,可以不写吗
问题解答
回答1:i是遍历元素的索引。如原生的map,forEach方法。
[’a’, ’b’, ’c’].map(function(item, i, array){ console.log(item, i, array);});[’a’, ’b’, ’c’].forEach(function(item, i, array){ console.log(item, i, array);});
item为当前项,即当前遍历的元素本身。分别为a, b, ci为元素处于数组中的下标或索引。分别为 0, 1, 2array为数组本身。值为[’a’, ’b’, ’c’]
回答2:i就是item在data中对应的index,可以省略
回答3:参考原生的 map , item 是 data 项的引用, i 代表索引. i 可以省略的
举个例子:
var arr = [1,2,3];arr.map(function(item){ if(item == 2){ item = 100; // arr 是不会变成[1,100,3],因为 item 改变不影响原数组,它只是个引用 }})
如果像下面这样,就会改变 arr 了
arr = arr.map(function(item){ if(item == 2){ item = 100; } return item})
标签:
JavaScript
排行榜