优秀的编程知识分享平台

网站首页 > 技术文章 正文

ES6新增数组方法(es6新增数组方法有哪些)

nanyue 2024-10-11 13:39:54 技术文章 3 ℃

ES6新增数组方法

map——>映射

arr.map(function(数组中的每一项){});//针对数组中的每一项进行操作

let arr = [1,2,3,4];
alert(arr);
let arr2 = arr.map(function(x){
 return x + 1;
});
alert(arr2);

filter——>过滤

arr.filter(function(数组中的每一项){});//针对数组中符合条件的进行操作

let arr = [1,2,3,4];
alert(arr);
let arr2 = arr.filter(function(x){
 return x % 2;
});
alert(arr2);
//简写形式
let arr2 = arr.filter(x => x % 2);

forEach——>循环

arr.forEach(function(每一项的值value,每一项的索引index,数组本身array){});

arr.forEach(function(value,index,array){
 //alert(value);
 //alert(index);
 //alert(array);
 console.log(value,index,array);
});

reduce——>汇总

  • arr.reduce(函数[,初始值])
  • arr.reduce(function(前一个值pre,当前值cur,索引值index,数组本身arr){});
arr.reduce(function(pre,cur,index,array){
 console.log(`pre is ${pre},cur is ${cur},index is ${index},array is ${array}`);
});

如果没有指定初始值,默认会把数组的第一项作为初始值(第一个pre)

let arr = [1,2,3,4];
let sum = arr.reduce(function(pre,cur,index,array){
 return pre + cur;
});
alert(sum);//10

函数的返回值,每次作为前一个值

let arr = [1,2,3,4];
let sum = arr.reduce(function(pre,cur,index,array){
 return pre + cur;
});
alert(sum);//10

如果指定了初始值,初始值作为第一次的pre值

let arr = [1,2,3,4];
let sum = arr.reduce(function(pre,cur,index,array){
 return pre + cur;
},100);
alert(sum);//110

利用reduce方法将二维数组转换为一维数组

arr1 = [[1,2],[3,4],[5,6]];
let arr2 = arr1.reduce(function(pre,cur,index,array){
 return pre.concat(cur);
});
alert(arr2);
最近发表
标签列表