js中map和foreach的用法

js中map和foreach的用法

在日常开发工作中,经常需要对数组进行一些遍历处理,这个时候大家会想到map和foreach方法,下面简单介绍一下两者的用法和区别

foreach的用法

forEach用来遍历数组,可以改变原数组,不会产生新数组。

    let arr = [{
      name: '老于', age: 18 }, {
      name: '张三', age: 15 }, {
      name: '李四', age: 22 }, {
      name: '王五', age: 25 }, {
      name: '老朱', age: 12 }]
    let arr1 = []
    arr1 = arr.forEach(item => {
     
      item.age = item.age + 5
    })
    console.log(arr);
    console.log(arr1);

输出结果如下:
js中map和foreach的用法_第1张图片
可以看到原数组已发生改变,用新数组去接收的话返回的是undefined

map的用法

map函数会产生一个新数组,新数组中的元素为return的返回值,原数组不会发生改变

let arr=[1,2,3,4]
arr.map(item=>{
     item=item*2})
console.log(arr);

js中map和foreach的用法_第2张图片
原数组并没有发生改变,但是大家要记住数组元素只能是字符和数字哦,如果是引用类型,也是会发生改变的

    let arr = [{
      name: '老于', age: 18 }, {
      name: '张三', age: 15 }, {
      name: '李四', age: 22 }, {
      name: '王五', age: 25 }, {
      name: '老朱', age: 12 }]
    let arr1 = []
    arr.map(item => {
      item.age = item.age + 5})
    console.log(arr);
    console.log(arr1);

输出结果是:
js中map和foreach的用法_第3张图片
可以看到原数组已发生改变

你可能感兴趣的:(javascript)