全國(guó)咨詢(xún)/投訴熱線(xiàn):400-618-4000

首頁(yè)技術(shù)文章正文

Javascript如何改變數(shù)組的長(zhǎng)度?

更新時(shí)間:2021-07-07 來(lái)源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

修改數(shù)組長(zhǎng)度

使用“數(shù)組名.length”可以獲取或修改數(shù)組的長(zhǎng)度。數(shù)組長(zhǎng)度的計(jì)算方式為數(shù)組中元素的最大索引值加1,示例代碼如下。

var arr = ['a', 'b', 'c'];
console.log(arr.length);    //輸出結(jié)果:3

在上述代碼中,數(shù)組中最后一個(gè)元素是c,該元素的索引為2,因此數(shù)組長(zhǎng)度為3。使用arr.length不僅可以獲取數(shù)組長(zhǎng)度,還可以修改數(shù)組長(zhǎng)度,示例代碼如下。

var arr1 = [1, 2];
arr1.length = 4;    //大于原有長(zhǎng)度
console.log(arr1); //輸出結(jié)果:(4) [1, 2, empty x 2]
var arr2 = [1, 2, 3, 4];
arr2.length = 2;    //小于原有長(zhǎng)度
console.log(arr2);  //輸出結(jié)果: (2) [1, 2]

在console.log()的輸出結(jié)果中,前面的“(4)” 表示數(shù)組的長(zhǎng)度為4,后面顯示的是數(shù)組中的元素,emply表示空元素。若length的值大于數(shù)組中原來(lái)的元素個(gè)數(shù),則缺少的元素會(huì)占用索引位置,成為空元素;若length的值小于數(shù)組中原來(lái)的元素個(gè)數(shù),多余的數(shù)組元素將會(huì)被舍棄。 當(dāng)訪(fǎng)問(wèn)空元素時(shí),返回結(jié)果為undefined,示例代碼如下。

var arr = [1];
arr.length = 4;     //修改數(shù)組的長(zhǎng)度為4
console.log(arr);    //輸出結(jié)果: (4) [1, empty x 3]
console.log(arr[1]);    //輸出結(jié)果: undefined

除了上述情況外,還有如下3種常見(jiàn)的情況也會(huì)出現(xiàn)空元素。

//情況1 :在使用字面量創(chuàng)建數(shù)組時(shí)出現(xiàn)空元素
var arr=[1,2, ,4];
console.log(arr);   //輸出結(jié)果: (4) [1,2, empty, 4]

//情況2 :在new Array() 中傳人數(shù)組長(zhǎng)度的參數(shù)
var arr = new Array(4);
console.log(arr);   //輸出結(jié)果: (4) [empty x 4]

//情況3:為數(shù)組添加索引不連續(xù)的元素
var arr= [1];
arr[3] = 4;     //向數(shù)組中添加一個(gè)元素,索引為3
console.log(arr);       //輸出結(jié)果: (4) [1, empty x 2, 4]
分享到:
在線(xiàn)咨詢(xún) 我要報(bào)名
和我們?cè)诰€(xiàn)交談!