数组/字符串方法——补充
一、数组.copyWithin(x,y,z)
- 三个参数
- 第一个:从该位置开始覆盖
- 第二个:复制开始位置
- 第三个:复制结束位置
- 作用:截取数组中 y - z 的一段内容,从 x 位置开始覆盖原数组
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var arr1 = arr.copyWithin(1, 3, 6);
二、数组.flatMap(function(t,i){})
- 作用:
- 拍平数组,只能拍平一层
- t:表示第二层数组的每一项
- i:表示第二层数组的索引
var arr = [
[1, 2],
[4, 5],
[6, [7, 8]],
];
var arr1 = arr.flatMap(function (t, i) {
t.unshift(0);
console.log(t);
return t;
});
console.log(arr1);
三、字符串.padStart/padEnd( x,y )
- 第一个参数:该字符串满足几位
- 第二个参数:当不满足的时候在前(padStart)后(padEnd)补上 y 这个字符
console.log(String(Math.floor(Math.random() * 20)).padStart(2, '0'));
console.log(String(Math.floor(Math.random() * 20)).padStart(2, '0'));
四、Symbol()
- 可以创建一个第一位而的变量
- Symbol 无法使用 for in 遍历
var key = Symbol();
var obj = {
[key]: 1,
b: 2,
a: 2,
};
obj.key = 10;
obj[key] = 100;
console.log(obj);
for (var i in obj) {
console.log(i);
}