在javascript中,可以利用數(shù)組對象的length屬性來查詢數(shù)組長度,語法格式“array.length”;length屬性可以返回數(shù)組的最大長度,即其值等于最大下標(biāo)值加1。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
在javascript中,可以利用數(shù)組對象的length屬性來查詢數(shù)組長度。
每個數(shù)組都有一個 length 屬性,該屬性返回數(shù)組的最大長度,即其值等于最大下標(biāo)值加 1。由于數(shù)字下標(biāo)必須小于 2^32-1,所以 length 屬性最大值等于 2^32-1。
示例1
下面代碼定義了一個空數(shù)組,然后為下標(biāo)等于 100 的元素賦值,則 length 屬性返回 101。因此,length 屬性不能體現(xiàn)數(shù)組元素的實(shí)際個數(shù)。
var a = []; //聲明空數(shù)組 a[100] = 2; console.log(a.length); //返回101
輸出:
101
length 屬性可讀可寫,是一個動態(tài)屬性。length 屬性值也會隨數(shù)組元素的變化而自動更新。同時,如果重置 length 屬性值,也將影響數(shù)組的元素,具體說明如下:
如果 length 屬性被設(shè)置了一個比當(dāng)前 length 值小的值,則數(shù)組會被截斷,新長度之外的元素值都會丟失。
如果 length 屬性被設(shè)置了一個比當(dāng)前 length 值大的值,那么空數(shù)組就會被添加到數(shù)組末尾,使得數(shù)組增長到新指定的長度,讀取值都為 undefined。
示例2
下面代碼演示了 length 屬性值動態(tài)變化對數(shù)組的影響。
var a = [1,2,3]; //聲明數(shù)組直接量 a.length = 5; //增長數(shù)組長度 console.log(a[4]); //返回undefined,說明該元素還沒有被賦值 a.length = 2; //縮短數(shù)組長度 console.log(a[2]); //返回undefined,說明該元素的值已經(jīng)丟失
輸出:
undefined undefined
【