1.var 數組名稱 = [元素1,元素2,...];前端
var arr=[];//定義空數組 var arr1=[100,'前端',true,undefined];//定義數組同時添加不一樣類型的元素
2.構造函數方式程序員
var 數組名稱 = new Array(元素1,元素2,...);
var 數組名稱 = new Array(length);
length:number類型,表示數組的長度(存在元素的個數)數組
var arr=new Array();//用new創造出一個空數組的構造函數 var arr1=new Array(100,'前端',true,undefined);//用new創造一個空數組的構造函數並添加元素
3.函數方式定義函數
var 數組名稱 = Array(元素1,元素2,...);
var 數組名稱 = Array(length);
length:number類型,表示數組的長度(存在元素的個數)code
var arr=Array();//定義一個空數組 var arr1=Array(100,'前端',true);//定義一個空數組並添加元素 var arr2=Array(20);//定義一個數組並給它開20個位置
表示數組中元素的位置使用數字值來表示的
數字值:表示元素的位置,也就是下標
數組的長度與元素的個數是一致的索引
var arr=[];//定義一個空數組 arr[0] = '大前端'; arr[1] = true;
表示數組中元素的位置使用字符串來表示
注意關聯數組的數組長度與元素個數不一致,length在關聯數組中失效字符串
var arr=[];//定義一個空數組 arr['name'] = '孫悟空'; arr['age'] = 500; arr['job'] = '花果山美猴王';
數組的長度與元素的個數不一致的,索引數組的位置容許不連續的,沒有定義元素的位置默認爲空console
var arr=[]; arr[0] = '美猴王'; arr[3] = 500; arr[5] = '花果山';
數組名稱[索引值]變量
var arr=['大前端',100,null];//定義數組 console.log(arr[0]);//輸出arr中0位置的內容 console.log(arr[5]);//訪問arr中位置5的內容,雖然不存在,可是也不報錯,返回undefined
var num=100; var res=num; console.log(num);//輸出結果:100 console.log(res);//輸出結果:100 num=200; console.log(res);//輸出結果:100 //複製變量裏的值,無論原變量怎麼改動值,都不影響複製它值的另外一個變量的值 var arr=['大前端',100,true]; var arr1=arr; console.log(arr);//輸出結果:['大前端',100,true] console.log(arr1);//輸出結果:['大前端',100,true] arr=[100]; console.log(arr);//輸出結果:[100] console.log(arr1);//輸出結果:['大前端',100,true] arr[0]=100; console.log(arr);//輸出結果:[100,100,true] console.log(arr1);//輸出結果:[100,100,true] /*複製一個數組,若是被複制的原數組,只會把原數組中的存儲地址位置賦值給另外一個數組, 另外一個數組會跟它一塊兒經過地址位置鏈接到同一個存儲位置,若是原數組修改本身裏面的值 會影響另外一個數組,若是原數組直接從新賦值一個新數組,則不影響另外一個數組*/
//索引數組的修改 var arr=['大前端',100]; arr[0]='前端'; //關聯數組的修改 var arr1=[]; arr1['name']='孫悟空'; arr1['age']=500; arr1['name']='唐僧';
//索引數組的刪除 var arr1=['大前端',true]; delete arr1[0]; //關聯數組的刪除 var arr2=[]; arr2['kecheng']='大前端'; arr2['name']='張三'; delete arr2['kecheng'];
var arr = ['前端', 200, true, undefined]; // while語句 var i = 0; while (i < arr.length){ console.log(arr[i]); i++; } // do...while語句 var i = 0; do { console.log(arr[i]); i++; } while (i < arr.length); // for語句 for (var i=0; i<arr.length; i++) { console.log(arr[i]); }
for語句:循環的開始和結束,都是由程序員決定的
for..in語句:循環只能從開始到結束循環
var arr = ['前端', 100, true, undefined]; /* for (var 變量 in 數組) { 代碼段 } * 變量:獲得的是數組的索引值 */ for (var i in arr) { console.log(arr[i]); } // 關聯數組的length屬性爲 0 var arr1 = []; arr1['name'] = '張三'; arr1['age'] = 28; arr1['job'] = '程序員'; // for..in語句能夠循環遍歷關聯數組, for語句不行 for (var i in arr1) { console.log(arr1[i]); } // 稀疏數組 - 數組的長度與元素的個數不一致 var arr2 = []; arr1['name'] = '李四'; arr1['age'] = 89; arr1['job'] = '運動員'; // for..in語句循環遍歷稀疏數組(直接獲得有效元素值), for語句不行 for (var i in arr2) { console.log(arr2[i]); }
var arr = [];// 定義一個空數組 arr[0] = [蘋果X,8999,2017]; arr[1] = [小米,999,2016]; arr[2] = [華爲,4563,2017]; console.log(arr); // 訪問二維數組中的元素 var result = arr[0]; console.log(result[0]); console.log(arr[0][0]); // 循環遍歷二維數組 for (var i=0; i<arr.length; i++) { console.log(arr[i]); for (var j=0; j<arr[i].length; j++) { console.log(arr[i][j]); } }