數組(一)——數組創建及操作
阿新 • • 發佈:2018-07-28
shift hle 等價 func nsh like 索引 arr delet
創建數組
1. 字面量
var BAT = [‘Alibaba‘,‘Tencent‘,‘Baidu‘];
var students = [{name:‘ydt‘,age:23},{name:‘yjx‘,age:40}];
var arr = [‘a‘,123,true,null,undefined];
var arrInArr = [[1,2],[3,4,5]];
2. new Array
var arr = new Array(); var arrWithLength = new Array(100);//undefined*100 var arrLikesLiteral = new Array(true,false,null,1,2,‘hi‘);//等價於[true,false,null,1,2,‘hi‘];
數組長度限制範圍:0~2的23次方-1。
數組讀寫
var arr = [1,2,3,4,5];
arr[1];//2
arr.length;//5
arr[5] = 6;//可以動態添加數組長度
arr.length:;//6
數組元素增刪
動態的,無需指定大小
//數組尾部增加元素 arr.push(); arr[arr.length] = 4;//equal to arr.push(4); //數組頭部增加元素 arr.unshift(0); var = [1,2]; delete arr[0];//刪除索引,值變為undefined arr[0];//undefined , 長度不變。 arr.length;//2 0 in arr;//false,0索引已被刪除,如果不執行delete,主動為arr[0]設置值為undefined,0 in arr將得到true。 //數組尾部元素刪除 arr.pop(); arr.length--;//equal to arr.pop(); //數組頭部元素刪除 arr.shift();
數組叠代
1. 普通for循環
var i = 0,n=10;
var arr = [1,2,3,4,5];
for(;i<n;i++){
console.log(arr[i]);
}
2. for in (不建議)
會叠代原型鏈上的屬性
var i = 0,n=10;
var arr = [1,2,3,4,5];
for(i in arr){
console.log(arr[i]);
}
3. for of
var i = 0,n=10;
var arr = [1,2,3,4,5];
for(i of arr){
console.log(i);
}
4.Array.prototype.forEach
var arr = [1,2,3,4,5];
arr.forEach(function(value,index,arr){
console.log(value);
})
只為數組指定大小,未設置值,則不存在索引屬性(盡管裏面的數組元素均為undefined),但若認為設置數組元素為undefined,如arr[0] = undefined,則存在索引屬性。
數組(一)——數組創建及操作