关于Array
的常用方法和注意点
基础
字面量方式创建
let ary1 = []
let ary2 = [1,2,3]
实例创建 当只有一个参数的时候 代表创建相同数量的空项
let ary1 = new Array() //[]
let ary2 = new Array(3) //[, , ,]
let ary3 = new Array(1,2,3) //[1, 2, 3]
Array.of()
是 ES6 为了弥补 new Array()
在创建数组的不足
let ary1 = Array.of() //[]
let ary2 = Array.of(3) //[3]
let ary3 = Array.of(1,2,3) //[1, 2, 3]
length
是 Array 实例上的一个属性 返回数组元素的个数
let ary = [1,2,3,4,5]
let lengths = ary.length;
console.log(lengths) //5
Array.isArray(value)
value是否是一个 Array
Array.isArray([1,2,3]) // true
Array.isArray({}) //false
Array.isArray("foobar") //false
Array.isArray(undefined) //false
Array.from()
// 留个位置
增, 删, 改
fill()
- 作用: 用一个固定值value
填充一个数组中从索引start
到索引end
内的全部元素
- 参数: fill(value[, start = 0[, end = this.length]])
- 返回值: 填充后的数组
- 原有数组是否改变: 是
fill(value)
默认: start = 0 end = this.length
let ary = [1,2,3,4]
let returnValue = ary.fill(0)
console.log(ary) //[0, 0, 0, 0]
console.log(returnValue) //[0, 0, 0, 0]
fill(value,start,end)
start
是开始填充的索引 end
(不包含end) 结束填充的索引
let ary = [1,2,3,4]
let returnValue = ary.fill(0,1,3)
console.log(ary) //[1, 0, 0, 4]
console.log(returnValue) //[1, 0, 0, 4]
如果添加的是一个对象 则是对同一个对象的引用
let ary = new Array(2)
ary.fill({sex:1})
ary[0].sex = 0
console.log(ary) //[{ sex: 1 }, { sex: 1 }]
push()
- 作用: 向数组的末尾添加1个或多个新元素
- 参数: push(itemN)
- 返回值: 增加内容后数组的长度值
- 原有数组是否改变: 是
push()
向数组的末尾增加一个或多个新元素
let ary = []
ary.push(1)
let returnValue = ary.push(2,'3')
console.log(ary) //[1, 2, "3"]
console.