怎么清空javascript數(shù)組
更新時間:2013年05月11日 17:22:29 作者:
這是一個很基礎(chǔ)的問題,但是我們往往經(jīng)常做錯,這里簡單分享下,方便需要的朋友
當(dāng)一個數(shù)組需要清空的時候,很多人使用下面的方法:
a = [];
我們知道javascript變量存儲方式分為引用類型和直接量。數(shù)組屬于對象,即引用類型,引用的是變量指針地址,之所以這樣設(shè)計也是為了節(jié)省內(nèi)存。
再說到上面的請空數(shù)組的方式,如果采用直接賦值一個新數(shù)組的方式,那么之前引用的數(shù)組可能不會被釋放(有其他的引用),例如下面的代碼:
var a = [2,3];
var b = a;
a = [];
console.log(b);
這時候a和b就不是同一個數(shù)組了,清空了a而b還是指到之前的引用地址,除非你是故意的,否則這將會有隱患。
所以最佳的請空數(shù)組方式是:將length設(shè)置為0,即:
a.length = 0;
轉(zhuǎn)自 JS8.IN ™
復(fù)制代碼 代碼如下:
a = [];
我們知道javascript變量存儲方式分為引用類型和直接量。數(shù)組屬于對象,即引用類型,引用的是變量指針地址,之所以這樣設(shè)計也是為了節(jié)省內(nèi)存。
再說到上面的請空數(shù)組的方式,如果采用直接賦值一個新數(shù)組的方式,那么之前引用的數(shù)組可能不會被釋放(有其他的引用),例如下面的代碼:
復(fù)制代碼 代碼如下:
var a = [2,3];
var b = a;
a = [];
console.log(b);
這時候a和b就不是同一個數(shù)組了,清空了a而b還是指到之前的引用地址,除非你是故意的,否則這將會有隱患。
所以最佳的請空數(shù)組方式是:將length設(shè)置為0,即:
復(fù)制代碼 代碼如下:
a.length = 0;
轉(zhuǎn)自 JS8.IN ™
您可能感興趣的文章:
相關(guān)文章
ES6 新增的創(chuàng)建數(shù)組的方法(小結(jié))
這篇文章主要介紹了ES6 新增的創(chuàng)建數(shù)組的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
JavaScript Drum Kit 指南(純 JS 模擬敲鼓效果)
這篇文章主要介紹了JavaScript Drum Kit 指南,也就是純 JS 模擬敲鼓效果實現(xiàn)代碼,需要的朋友可以參考下2017-07-07
JavaScript對象拷貝與Object.assign用法實例分析
這篇文章主要介紹了JavaScript對象拷貝與Object.assign用法,結(jié)合實例形式分析了javascript深拷貝與淺拷貝以及Object.assign的功能與相關(guān)使用技巧,需要的朋友可以參考下2018-06-06

