- 扩展运算符 ...
···javascript
console.log(...[1,2,3]);
··· - Array.from
将类似数组的对象和可遍历对象转为真正的数组 - Array.of用于将一组值,转换为数组。
Array.of(3, 11, 8) // [3,11,8]
Array.of(3) // [3]
Array.of(3).length // 1
- 数组实例:copyWithin。在当前数组内部,将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组
[1, 2, 3, 4, 5].copyWithin(0, 3)
// [4, 5, 3, 4, 5]
- 实例:find findIndex
- 实例:fill 填充数组
['a', 'b', 'c'].fill(7)
// [7, 7, 7]
new Array(3).fill(7)
// [7, 7, 7]
- 实例:entries keys values,返回一个遍历器对象
- 实例:includes 是否包含给定的值
- 实例:flat faltMap flat将数组拉平,变成一维数组;flatMap对每个成员执行一个函数,只能展开一层数组
[2, 3, 4].flatMap((x) => [x, x * 2])
// [2, 4, 3, 6, 4, 8]
上面代码中,遍历函数返回的是一个双层的数组,但是默认只能展开一层,因此flatMap()返回的还是一个嵌套数组。
- 数组的空位
数组的空位是没有任何值
0 in [undefined, undefined, undefined] // true
0 in [, , ,] // false
空位的处理规则非常不统一,所以建议避免出现空位。
- Array.prototype.sort() 的排序稳定性
排序稳定性:排序关键字相同的项目,排序前后的顺序不变
常见的排序:插入排序、合并排序、冒泡排序等都是稳定的
堆排序、快速排序是不稳定的。
不稳定排序在多重排序时可能会产生问题。
网友评论