数组/字符串方法——补充(copyWithin、flatMap、padStart/padEnd、Symbol)

本文介绍了JavaScript中几个重要的数组和字符串方法,包括.copyWithin()用于截取并覆盖数组部分,.flatMap()用于扁平化数组,.padStart()和.padEnd()用于字符串填充,以及Symbol()用于创建独一无二的标识符。示例代码详细展示了这些方法的用法和效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数组/字符串方法——补充

一、数组.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); //[1, 4, 5, 6, 5, 6, 7, 8, 9]

二、数组.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); //  在第二层数组的每一项前面 添加 0
  console.log(t); // [1,2],[4,5],[6,[7,8]]
  return t;
});
console.log(arr1); // [0, 1, 2, 0, 4, 5, 0, 6,[7, 8] ]

三、字符串.padStart/padEnd( x,y )

  • 第一个参数:该字符串满足几位
  • 第二个参数:当不满足的时候在前(padStart)后(padEnd)补上 y 这个字符
console.log(String(Math.floor(Math.random() * 20)).padStart(2, '0')); // 字符串需要满足两位,不够两位的时候在前面加上 ‘0’
console.log(String(Math.floor(Math.random() * 20)).padStart(2, '0')); // 字符串需要满足两位,不够两位的时候在后面加上 ‘0’

四、Symbol()

  • 可以创建一个第一位而的变量
  • Symbol 无法使用 for in 遍历
var key = Symbol();
var obj = {
  [key]: 1, // [key]  引用上面定义的变量
  b: 2,
  a: 2,
};

obj.key = 10; // 由于是对象眯没有key,此操作给对象里添加key
obj[key] = 100;
console.log(obj); //{b: 2, a: 2, key: 10, Symbol(): 100}

for (var i in obj) {
  console.log(i); // a,b,key    Symbol无法被  for in 遍历
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值