1.去重
new Set()
new Set([1,2,3,4,2]) //[1,2,3,4]
2.替换
splice(1,1,'5')
3.遍历
array1.map((item,index,array)=>{return item*2}) var friends = [ { name: ‘John’, age: 22 }, { name: ‘Peter’, age: 23 }, { name: ‘Mark’, age: 24 }, { name: ‘Maria’, age: 22 }, { name: ‘Monica’, age: 21 }, { name: ‘Martha’, age: 19 }, ] Array.from(friends, ({name}) => name);
4.清空
length = 0
5.数组转对象
var fruits = [“banana”, “apple”, “orange”, “watermelon”]; var fruitsObj = { …fruits };
6.填充数组
new Array(10).fill(“1”)
7.合并数组
food = […fruits, …meat, …vegetables]; array1.concat(array2,...,arrayn)
8.两个数组的交集
[…new Set(numOne)].filter(item => numTwo.includes(item));
9.去除假值
在JS中,假值有:false、0、''、null、NaN、undefined
var mixedArr = [0, 'blue', '', NaN, 9, true, undefined, 'white', false]; var trueArr = mixedArr.filter(Boolean);
10.倒序 reverse()
11.排序
function sortFN(pro1,pro2){ return function(a,b){ return a.pro1 - b.pro2 } } function sortFN(pro1,pro2){ return function(a,b){ if(a.pro1 == b.pro1){return a.pro2 - b.pro2} return a.pro1 - b.pro1 } }
12.求和
nums.reduce((x, y) => x + y);
13.其他补充:
push() 返回修改后的长度。
pop() 返回移除的那个值,减少数组的length
shift() 删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 。
unshift() 将参数添加到原数组开头,并返回数组的长度
join()
indexof() lastIndexOf() 接收两个参数:要查找的项和(可选的)表示查找起点位置的索引
forEach()
arr.forEach(function(x, index, a){ console.log(x + '|' + index + '|' + (a === arr)); });
filter(fn)
some(fn)
every (fn) every(fn) fn :条件()
arry1.includes(item) => true /false
var arr3 = arr.some(function(x) { return x < 1; });