数组方法
插入的方法:
Array.unshilft :在数组开头插入数据,返回数组的长度,改变原数组。
Array.push: 在数组结尾插入数据,返回数组的长度,改变原数组。
移除元素 :
Array.shift:删除数组的第一个元素,返回删掉的值,改变原数组。
Array.pop: 删除数组的最后一个元素,返回删掉的值,改变原数组。
查找元素:
Array.find: 返回满足的第一个元素,无则返回undefined。
Array.findIndex: 返回满足条件的第一个元素的索引。
Array: some: 返回Boolean,有一个元素满足条件返回true,不满足返回false。
Array.every: 返回Boolean,所有元素满足条件返回true,有一个不满足返回false。
Array.indexOf(查找的值,fromIndex (开始查找的下标)): 返回找到元素的下标,没找到返回-1;
Array.includes(查找的值,fromIndex (开始查找的下标)): 判断一个数组是否包含某个元素,有返回true,无则false。
截取数组/替换数组元素
Array.slice ( [begin[, end]] ) 返回一个新的数组(浅拷贝),左闭右开。
Array.splice( start[, deleteCount[, item1[, item2[, ...]]]] ) , 返回删除掉的元素数组,无则空数组,会改变原数组。
数组循环
Array.map: 返回每个元素调用callback时返回的值组成的新数组。
Array.forEacth:返回undefined,for循环的语法糖,特别注意:如果稀松数组的那些种空值会变跳过。这个循环是不能被终止的。
过滤元素
Array.filter:过滤掉callback返回false的元素,返回callback是true的元素。
Array.reduce( callbackFn, initialValue ): 返回最终的callbackFn返回的值,如果初始值initialValue 没有设置的话,第一个元素会被当作初始值,从第二个开始迭代循环。
数组合并
Array.concat(value1[, value2[, ...[, valueN]]]):返回,合并成一个新数组
数组排序
Array.sort ,会改变原数组。
- 如果 compareFunction(a, b) 小于 0 ,那么 a 会被排列到 b 之前;
- 如果 compareFunction(a, b) 等于 0 , a 和 b 的相对位置不变。备注: ECMAScript 标准并不保证这一行为,而且也不是所有浏览器都会遵守(例如 Mozilla 在 2003 年之前的版本);
- 如果 compareFunction(a, b) 大于 0 , b 会被排列到 a 之前。
数组反转
Array.reverse
返回反转后的数组引用,原数组会被改变。
按指定格式转字符串
Array.join()按参数的内容作为分隔符,把数组转成字符串
扁平化数组
Array.flat (depth):返回扁平化后的数组,默认1层。参数是depth,展开几层的深度。
获取某下标的元素
Array.at(index): 返回index下标的元素,可以为负数
将类数组转化为数组
Array.form(arrayLike,mapFn, thisArg ): 第二个参数是类似数组的map === Array.form().map();
复制数组部分到某个索引位置
Array.prototype.copyWithin