數(shù)組:內(nèi)存中連續(xù)存儲(chǔ)多個(gè)變量的存儲(chǔ)空間,
? ? ? ? ? 一、 聲明數(shù)組:
? ? ? ? ? ? 1.聲明一個(gè)空數(shù)組
? ? ? ? ? ? ? var arr=[];
? ? ? ? ? ? ? var arr=new Array()
? ? ? ? ? ? 2.聲明數(shù)組的同時(shí)初始化數(shù)據(jù)
? ? ? ? ? ? ? var arr=['值1','值2','值3'];
? ? ? ? ? ? ? var arr=new Array('值1','值2','值3');
? ? ? ? ? ? 3.創(chuàng)建n個(gè)空元素的數(shù)組
? ? ? ? ? ? ? var arr=new Array(n);
? ? ? ? ? 二、訪問數(shù)組中的元素
? ? ? ? ? ? 下標(biāo):數(shù)組中唯一標(biāo)識(shí)一個(gè)元素存儲(chǔ)位置的序號(hào)
? ? ? ? ? ? ? ? ? 下標(biāo)默認(rèn)從0開始,逐漸遞增,不重復(fù)
? ? ? ? ? ? ? ? ? arr[i]訪問下標(biāo)為i位置的元素
? ? ? ? ? 三、數(shù)組的length屬性
? ? ? ? ? ? 標(biāo)識(shí)了數(shù)組中理論上的元素個(gè)數(shù)
? ? ? ? ? ? 任何情況下,數(shù)組的長(zhǎng)度永遠(yuǎn)等于最大下標(biāo)+1
? ? ? ? ? ? 固定套路:
? ? ? ? ? ? ? ? 訪問數(shù)組中的最后一個(gè)元素 arr[arr.length-1]
? ? ? ? ? ? ? ? 訪問數(shù)組中倒數(shù)第n個(gè)元素 arr[arr.length-n]
? ? ? ? ? ? ? ? 末尾追加新元素: arr[arr.length]=新值
? ? ? ? ? ? js中的數(shù)組有三個(gè)不限制:
? ? ? ? ? ? ? ? 1.不限制數(shù)據(jù)類型
? ? ? ? ? ? ? ? 2.不限制下標(biāo)越界
? ? ? ? ? ? ? ? ? ? 獲取元素時(shí),下標(biāo)越界,不報(bào)錯(cuò),返回undefined
? ? ? ? ? ? ? ? 3.不限制元素的個(gè)數(shù)?
? ? ? ? ? ? ? ? ? ? 設(shè)置元素時(shí)下標(biāo)越界會(huì)自動(dòng)添加新元素
? ? ? ? ? 四、數(shù)組的遍歷
? ? ? ? ? ? ? ? 遍歷:一次訪問數(shù)組中的每個(gè)元素
? ? ? ? ? ? ? ? for(var i=0;i<arr.lenght;i++){
????????????????????????????????????? console.log(arr[i]);//輸出數(shù)組中的當(dāng)前元素}
???????????? 索引數(shù)組:下標(biāo)為數(shù)字的數(shù)組
? ? ? ? ? ? ? 關(guān)聯(lián)數(shù)組:下標(biāo)部位數(shù)字的數(shù)組
???????????????????? varzzy=[];
? ? ? ? ? ? ? ? ? ?? zzy['name']='趙子陽(yáng)';
? ? ? ? ? ? ? ? ? ?? zzy['age']='19';
? ? ? ? ? ? ? ? ? ?? zzy['sex']='boy';
? ? ? ? ? ? ? ? ?? ? ? console.log(zzy);
? ? ? ? ? ? 注:關(guān)聯(lián)數(shù)組沒有l(wèi)ength屬性
? ? ? ? ? ? ? ? 關(guān)聯(lián)數(shù)組不能用for遍歷,要用for....in遍歷
? ? ? ? ? ? ? ? for(var key in hash){
? ? ? ? ? ? ? ? ? //key 代表關(guān)鍵字,即下標(biāo)
? ? ? ? ? ? ? ? ? //hash代表數(shù)組名
? ? ? ? ? ? ? ? }
???????????? var zzy=[];
? ?? ? ? ? zzy['身高']='175';
?? ? ? ? ? zzy['體重']='120';
?????????? zzy['性別']='good good boy';
? ? ? ? ? ? console.log(zzy);
? ?? ? ? ? ? for(var key in zzy){
? ? ? ? ? ? ? hash表示數(shù)組名
? ? ? ? ? ? ? key代表關(guān)鍵字(下標(biāo))
? ? ? ? ? ? console.log(zzy[key]);
? ? ? ? ? ? }