超简单的伪数组转数组的方法, 简单到令人发指! (这里伪数组使用arguments)

1.使用 Array.prototype.slice

 

            Array.prototype.slice.call(arguments)
        

 

slice() 方法返回一个新的数组对象,这一对象是一个由 begin和 end(不包括end)决定的原数组的浅拷贝。原始数组不会被改变。

虽然是浅拷贝, 但是对于arguments的转数组足够了, 因为啥呢?就是因为arguments这个东西一般不会动它。

 

2. 使用Array.from() 函数

Array.from()

该函数是Array的一个方法,官方描述就是伪数组转数组的方法;

 

 Array.from(arrayLike[,mapFn[, thisArg]);

 

使用场景
1: arguments转数组;
Array.from(arguments);

2: 字符串转数组
var str = '123abc';
var arr = Array.from(str);

3: 其他场景

第二个参数是map函数, 可以对每个item进行加工后返回。

3. 使用 ... 运算符

var arr = [...arguments];

该运算符还能在数组的复制场景下使用

// bad
const len = items.length;
const itemsCopy = [];
let i;

for (i = 0; i < len; i += 1) {
  itemsCopy[i] = items[i];
}

// good
const itemsCopy = [...items];

 

(完)

 

相关文章:

  • 2021-11-07
  • 2021-10-26
  • 2022-12-23
  • 2021-09-20
  • 2022-12-23
  • 2021-07-13
  • 2022-01-02
猜你喜欢
  • 2022-12-23
  • 2021-10-08
  • 2021-11-07
  • 2021-11-17
  • 2021-11-19
  • 2021-11-17
相关资源
相似解决方案