-
splice() 删除/替换数组 (改变原始数组并返回元素数组)
splice(startIndex, length) - 从起始下标开始删除多少个元素
splice(startIndex, length, newEl) - 将起始下标后length位替换为新元素
splice(startIndex, 0, newEl) - 在起始下标后插入一个新元素 -
slice()
slice(startIndex, endIndex) - 截取数组,截取范围为起始下标志结束下标(含首不含尾) -
push()
从数组尾部添加元素并返回数组长度
-
unshift()
从数组头部添加元素并返回数组长度
-
shift()
删除数组第一个元素并返回该元素
-
pop()
删除数组最后一个元素并返回该元素
-
concat()
arr1.concat(arr2) 将arr2数组拼接到arr1数组并返回新数组
-
toString()
将数组转为以‘,’分割的字符串
-
join()
将数组转为以引号内符号分割的字符串
-
sort()
sort()方法默认升序排序,需要降序排序可以传入自定义方法作为参数
为json对象数组排序
-
数组去重
- 遍历数组使用indexOf去重
- 遍历数组使用标识符去重
- 排序后遍历数组,若有重复元素则必定相邻,对比新数组中最后一个元素是否等于当前元素
- es6方法去重(Set)
或者
Array.from()可以把类数组对象、可迭代对象(比如Set)转换为数组
- 遍历数组使用indexOf去重
some、every
some: 遍历数组,如果有任意一项返回true,则为true
every: 遍历数组,如果每一项都返回true,则为true
数组求和
[{a: 1}, {a: 2}].reduce((prev, curr) => {
return prev.a + curr.a
})
eval([1, 2, 3].join('+'))