数组的几种常用方法

163 阅读1分钟

1. forEach() 方法对数组的每个元素执行一次给定的函数

  • 返回值:undefined
  • 语法:arr.forEach(callback(currentValue [, index [, array]])[, thisArg]) 不改变原数组的值。

2. map() 方法创建一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值。

  • 返回值:一个由原数组每个元素执行回调函数的结果组成的新数组。
const array1 = [1, 4, 9, 16];

// pass a function to map
const map1 = array1.map(x => x * 2);

console.log(map1);
// expected output: Array [2, 8, 18, 32]

你不该使用map: A) 你不打算使用返回的新数组,或/且 B) 你没有从回调函数中返回值。 map()方法不会改变原数组。 示例:

let tableArr = tableDataArr.map(item=>{
  //遍历每一项把有调整后的字段的金额值改为数字形式
  for(let key in item){
    if(key.indexOf('amt')>-1){
      if(typeof item[key] ==='string'){
        item[key] = revertNumMoney(item[key]);
      }
    }
  }
  return item
});

3. some

some() 方法测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值。

  • 返回值:数组中有至少一个元素通过回调函数的测试就会返回true;所有元素都没有通过回调函数的测试返回值才会为false。

4. findIndex(it=>it.code === item.code)