Array.of

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


let arr = new Array(50);
console.log(arr)    // [empty × 50]

我们想创建数字50,但通过new Array()方式无法创建。

let arr = Array.of(50)
console.log(arr)    // [50]

现在我们可以创建一个长度为1,值为50的数组。
所以,Array.of方法我们一般用于将一组值,转换为数组。

let arr = Array.of(1,2,3)
console.log(arr)    // [1,2,3]

Array.from

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

Array.from() 可以把类数组对象转变成数组


1. 将类数组对象转换为数组

let object = {
    '0': 'qianduan7.com',
    '1': '前端7号',
    '2': '数组静态方法',
    length: 3
};
let arr = Array.from(object);  // ["qianduan7.com", "前端7号", "数组静态方法"]

2. arguments是一个类数组对象

function makeArray() {
  return Array.from(arguments);
}
let arr = makeArray('a', 'b', 'c');
console.log(arr);    // ["a", "b", "c"]
function cube() {
  return Array.from(arguments, value => value ** 3);
}
let arr = cube(1, 3, 5);    //  [1, 27, 125]

3. dom节点是一个类数组对象

Array.from(document.querySelectorAll('div'))

Array.isArray

Array.isArray() 用于确定传递的值是否是一个 Array。


// es5
Object.prototype.toString.call(arg) === '[object Array]';

//es6
let isArr = Array.isArray([1, 2, 3]);
console.log(isArr)  // true
版权声明:本文为博主原创文章,转载请添加原文地址
暂无评论