数组方法
常用的数组方法
let arr = [1,2,3,4,5,6]; // 首先创建一个数组用作测试
//join 数组间用参数作为间隔转换str, 返回字符串
console.log(arr.join('-'));
//push 添加参数到数组最后(返回arr长度)
console.log('push()');
console.log(arr.push(7)+arr);
//pop 移除并返回数组的最后一项
console.log('pop():');
console.log(arr.pop());
//shift 移除并返回数组的第一项
console.log('shift():');
console.log(arr.shift());
//unshift 添加参数到数组开头, 然后返回arr长度
console.log('unshift():');
console.log(arr.unshift(1)+arr);
//reverse 翻转数组项的顺序,返回数组
console.log('reverse():');
console.log(arr.reverse());
//sort 数组从小到大排序,返回数组
console.log('sort():');
console.log(arr.sort());
//concat 将参数添加到原数组中(参数会展开), 返回数组
console.log('concat():');
console.log(arr.concat(2,[12,13]));
//slice(x,y) 选中从x到y的元素,并返回新数组 (y是负数就变成从后向前)
console.log('slice():');
console.log(arr.slice(1,-1));
//splice(x,y,z...) 从x位开始删除y个元素并添加z, 返回删除的数组
console.log('splice():');
console.log(arr.splice(6,0,1));
//indexOf(x) 在arr中查找x并返回下标 lastIndexOf(x,y) 从后往前
console.log('indexOf():');
console.log(arr.indexOf(1));
ES6新增
这里使用的是上面定义的arr,如需测试请自行定义
//forEach() 遍历数组(每次都运行函数,不会改变原数组)
console.log('forEach():');
arr.forEach(function(item,index,arr){
console.log(item);
})
//map() 映射,遍历数组并创建一个新数组接受返回值,然后返回
console.log("map():");
console.log(arr.map(function(item){
return item += 1
}));
console.log(arr);
//filter() 过滤,遍历数组,返回新数组(根据boolean, 将返回值为true 的项添加到新数组)
console.log("filter():");
console.log(arr.filter(function(item){
return item > 2
}));
//every() 遍历数组,如果都符合函数要求,就会返回true
console.log("every():");
console.log(arr.every(function(item){
return item > 0
}));
//some() 遍历数组,如果有一个符合函数要求,就会返回true
//includes() 检测数组是否包含该对象,返回 true / false
console.log('includes():');
console.log(arr.includes(6));
//findIndex(fn) 用于找到第一个符合条件的数组成员位置,找不到就返回-1
console.log('findIndex():');
console.log(arr.findIndex((value,index) => value > 2));
//reduce() 接收一个函数作为累加器, 数组中每个值(从左到右)开始缩减, 返回最终值
console.log("reduce():");
console.log(arr.reduce(function(pre,cur,index,arr){
return pre + cur
}));
// Array.of() 将所有参数包成一个数组并返回
console.log("Array.of():");
console.log(Array.of('一号','二号','测试','成功','over'));
// Array.from(arraylike, mapFn, thisArg) 将类数组对象或可迭代对象转化为数组
// arraylike: 类数组 mapFn: 遍历数组时使用的函数 thisArg: form内this指向的对象
console.log("Array.from():");
let set = new Set([4,1,2,3,4,4]);
console.log("set:");
console.log(set);
console.log(Array.from(set));