Array提供的方法

Array 提供的方法

Array.from()方法

Array.from()方法用于从一个类似数组或可迭代对象中创建一个新的数组实例。

let arrayLike = {
    "0": "a",
    "1": "b",
    "2": "c",
    length: 3
};
// ES5的写法
var arr1 = [].slice.call(arrayLike); // ["a","b","c"]
// ES6的写法
let arr2 = Array.from(arrayLike); // ["a","b","c"]

值得注意的是, 扩展运算符(…)也可以将某些数据结构转为数组。

// arguments对象
function foo(){
    console.log([...arguments]);
}
foo(1,2,3,4,5);
// 将数组的Symbol.iterator赋给obj (使类数组可迭代)
// obj[Symbol.iterator] = [][Symbol.iterator];
// console.log([...obj]); // [ 'a', 'b', 'c' ]
console.log([...Array.from(obj)]); // [ 'a', 'b', 'c' ]

Array.of() 方法

Array.of() 方法用于创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。

Array.of(3,11,8) // [3,11,8]
Array.of(3) // [3]
Array.of(3).length // 1

这个方法的主要目的,是弥补数组构造函数 Array() 的不足。因为参数个数的不同,会导致 Array() 的行为有差异。

Array(3,11,8) // [3,11,8]
Array(3) // [,,,]
Array(3).length // 3

值得注意的是, Array.of() 方法如果没有参数,则会返回一个空数组

console.log(Array.of()); // []
console.log(new Array()); // []
console.log(Array()); // []
console.log([]); // []
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码小余の博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值