概述
Array是用于构造数组的全局对象,同时也是构造函数。
一般可以使用直接量来创建一个数组对象, 数组中的元素类型可以不一样
构造一个数组
const arr = [1, 2, '3']
也可以用构造函数来创建一个数组
const arr1 = new Array(1, 2, 3) //参数就是数组中的元素
const arr2 = new Array(1) //当只传入一个参数且该参数为非负整数时,该参数为新数组的length
Array的属性和方法
作为一个对象,Array有自己的属性和方法
属性
- Array本身没有自有属性,其属性继承字原型对象
Object.keys(Array) //[], 即数组没有可枚举自有属性
方法
-
Array.isArray
判断一个对象是不是数组,返回boolean
Array.isArray([1, 2, 3]) // true Array.isArray({foo: 123}) // false
-
Array.from
从一个类数组对象或者可迭代对象中创建一个新数组- 类数组对象
拥有一个length
属性和若干索引属性的任意对象
Array.from('foo') //[ 'f', 'o', 'o' ]
- 可迭代对象
从ES6的角度来说,就是Symbol.iterator
属性不为空
let s = new Set(['foo', window]) Array.from(s) // [ 'foo', window ]
- 类数组对象
-
Array.of
创建一个具有可变数量参数的新数组对象,而不考虑参数的数量或类型。与直接调用构造函数的区别在于传入一个非负整数时效果不同
Array.of(1, 2, 3) //[ 1, 2, 3 ]
Array.of(4) //[ 4 ]
new Array(1, 2, 3) //[ 1, 2, 3 ]
new Array(4) //[ , , , ]
网友评论