专业的JAVA编程教程与资源

网站首页 > java教程 正文

js forEach修改不了数组,如何遍历数组并修改当前数组

temp10 2024-11-21 21:16:47 java教程 12 ℃ 0 评论

js forEach修改不了数组,如何遍历数组并修改当前数组

arr[].forEach(function(item,index,array){

js forEach修改不了数组,如何遍历数组并修改当前数组

})

forEach没有返回值,并且传入的回调函数,遍历的是数组的每一项,并不能直接修改原数组,如“item=10”这样是修改不了原数组的。不过可以通过数组的索引修改原数组。

var info=[1,2,3,4,5];

info.forEach((item,index,arr)=>{

arr[index]=10;

});

console.log(info);

输出:[10, 10, 10, 10, 10]

如果这个数组的每一项是对象,那么就可以直接通过item修改:

var info=[{age:1},{age:2},{age:3},{age:4},{age:5}];

info.forEach((item,index,arr)=>{

item.age=10;

//不过这样也可以的:arr[index].age=10;

});

console.log(info);

输出:[{age:10},{age:10},{age:10},{age:10},{age:10}];

不过我一般是使用map函数,map的回调函数中支持return返回值,可以将修改的item数组每一项return返回,最后将map函数的返回值直接赋值给原数组:

var info=[1,2,3,4,5];

info=info.map((item,index,arr)=>{

item=10;

return item;

});

console.log(info);

输出:[10, 10, 10, 10, 10]



原文链接:https://blog.csdn.net/qq_42740797/article/details/114121275

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表