JS數(shù)組中l(wèi)ength屬性

length

當(dāng)我們修改數(shù)組的時(shí)候,length 屬性會自動更新。準(zhǔn)確來說,它實(shí)際上不是數(shù)組里元素的個(gè)數(shù),而是最大的數(shù)字索引值加一。

例如,一個(gè)數(shù)組只有一個(gè)元素,但是這個(gè)元素的索引值很大,那么這個(gè)數(shù)組的 length 也會很大:

let fruits = [];

fruits[123] = "Apple";

alert(fruits.length);? ? //124

要知道的是我們通常不會這樣使用數(shù)組。

length 屬性的另一個(gè)有意思的點(diǎn)是它是可寫的。

如果我們手動增加它,則不會發(fā)生任何有趣的事兒。但是如果我們減少它,數(shù)組就會被截?cái)?。該過程是不可逆的,下面是例子:

let arr = [1,2,3,4,5];

arr.length = 2;? ? //截?cái)嗟街皇?個(gè)元素

alert(arr);? ? //[1,2]


arr.length = 5;? ? //又把length加回來

alert(arr[3]);? ? //undefined:被截?cái)嗟哪切?shù)值并沒有回來

所以,清空數(shù)組最簡單的方法就是:arr.length = 0;

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容