1.数组的创建
1) 字面量创建
var arr = [1, true, 'zhaimin', [1,2]]
var Arr2 = [,,] //undefined,undefined
2)利用array构造器创建数组
var arr = new Array ()
var arr1 = new Array (100) //undefinde * 100 长度为100的数组
var arr2 = new Array (1,2,true) //1,2,true
注意: var arr1 = new Array () 与 var arr1 = Array()是等价的,所以new是可以省略的
2.数组的操作
1)删除数组
//通过delete删除
var arr = [1,2,3]
delete arr[1] // 1,undefined,3
//通过数组长度删除
var arr2 = [2,3,5]
arr2.lenght -=1 //2,3
//通过shift 从头删除
var arr3 = [3,6,9]
arr3.shift() //6,9
//通过pop从尾部删除
var arr4 = [5,7,0]
arr4.pop() //5,7
2)增加数组
//通过索引添加
var Arr = ['one',2]
Arr[3] = 3 //'one',2,3
//通过push添加
var arr = [1,2]
arr.push(3) //1,2,3
//通过unshift 从头增加
var arr2 = [2,3]
arr.unshift(0) //0,2,3
3)其他操作
判断数组中有无该值
var arr = [1,2,3]
2 in arr //true
4)遍历数组
var arr = [1,2,3,4,5]
for(var i=0; i<10; i++){
console.log(arr[i]) //1,2,3,4,5
}
Array.prototype.x = 'haha'
for(i in arr) {
//此方法会将圆形的属性也遍历出来,并且不能保证顺序
console.log(arr[i]) //1,2,3,4,5,haha
}
//可以通过hasOwnProperty将其原型的属性去掉
for(i in arr) {
if(arr.hasOwnProperty(i)){
console.log(arr[i]) //1,2,3,4,5,haha
}
}
补存
1)数组大小的限制 0到2^23-1