Array
concat()
- 复制一个全新的数据
- 修改复制的数据不会造成原始数据变化
const a = [1,2,3];
const b = a.concat();
console.log(b);
from()
let arrayLike = {
'0': 'a',
'1': 'b',
'2': 'c',
length: 3
};
const arr = Array.from(arrayLike);
console.log(arr);
Set()
const arr = [1,2,3,1];
const newArr = new Set(arr);
console.log(newArr);
some(callback)
- 根据函数给出的匹配要求进行遍历
- 匹配到后返回 true,并终止当前遍历。无匹配项时返回 false
- 不会对空数组进行遍历
- 不会改变原数据
var arr = [1,2,3,4,5,6];
arr.some(item => (item > 3));
filter(callback)
- 遍历数组,根据函数要求返回匹配项
- 不会对空数组进行遍历
- 不会改变原数据
var arr = [1,2,3,4,5,6];
arr.filter(item => (item > 3));
reduce(callback, initialValue)
- 接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始合并,最终为一个值。
- callback(previousValue, currentValue, index, array)
- previousValue: 上一次调用的返回值,或者是提供的初始值“initialValue”
- currentValue: 当前调用的值
- index: 当前值的索引
- array: 当前值调用的数组
const arr = [1,2,3,4];
arr.reduce((previousValue, currentValue, index, array) => {
retrun previousValue + currentValue;
}, initialValue)
map(callback)
- 返回一个新数组,数组中的元素为原始数据处理后的值
- 不会对空数组进行遍历
- 不会改变原数据
const arr = [1,2,3,4];
arr.map(item => item + 1);
forEach(callback)
- 将数组的每项元素传入回调函数
- 不会对空数据进行遍历
const arr = [1,2,3,4];
const newArr = [];
arr.forEach(item => newArr.push(item + 1))
console.log(newArr);