方式1,splice
創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),先為古塔等服務(wù)建站,古塔等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為古塔企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
1
2
3
var ary = [1,2,3,4];
ary.splice(0,ary.length);
console.log(ary); // 輸出 [],空數(shù)組,即被清空了
方式2,length賦值為0
這種方式很有意思,其它語(yǔ)言如Java,其數(shù)組的length是只讀的,不能被賦值。如
1
2
int[] ary = {1,2,3,4};
ary.length = 0;
Java中會(huì)報(bào)錯(cuò),編譯通不過(guò)。而JS中則可以,且將數(shù)組清空了,
1
2
3
var ary = [1,2,3,4];
ary.length = 0;
console.log(ary); // 輸出 [],空數(shù)組,即被清空了
目前 Prototype中數(shù)組的 clear 和mootools庫(kù)中數(shù)組的 empty 使用這種方式清空數(shù)組。
1、新建一個(gè)html文件,命名為test.html,用js刪除圖片。
2、在test.html文件內(nèi),使用p標(biāo)簽創(chuàng)建多段文字,同時(shí)設(shè)置每個(gè)p標(biāo)簽id屬性,主要用于下面使用js獲得對(duì)應(yīng)的p標(biāo)簽對(duì)象。
3、在test.html文件內(nèi),使用button標(biāo)簽創(chuàng)建一個(gè)“刪除html”的按鈕。
4、在test.html文件內(nèi),給button按鈕綁定onclick點(diǎn)擊事件,當(dāng)按鈕被點(diǎn)擊時(shí),執(zhí)行delhtml()函數(shù)。
5、在js標(biāo)簽內(nèi),創(chuàng)建delhtml()函數(shù),在函數(shù)內(nèi)實(shí)現(xiàn)對(duì)指定的p圖片進(jìn)行刪除。
6、在myfun()函數(shù)內(nèi),通過(guò)getElementById()方法獲得p標(biāo)簽對(duì)象,使用remove()方法刪除html。在瀏覽器中打開(kāi)test.html文件,點(diǎn)擊按鈕,就可以了。
當(dāng)一個(gè)數(shù)組需要清空的時(shí)候,很多人使用下面的方法:
復(fù)制代碼 代碼如下:a = [];
我們知道javascript變量存儲(chǔ)方式分為引用類(lèi)型和直接量。數(shù)組屬于對(duì)象,即引用類(lèi)型,引用的是變量指針地址,之所以這樣設(shè)計(jì)也是為了節(jié)省內(nèi)存。
再說(shuō)到上面的請(qǐng)空數(shù)組的方式,如果采用直接賦值一個(gè)新數(shù)組的方式,那么之前引用的數(shù)組可能不會(huì)被釋放(有其他的引用),例如下面的代碼:
復(fù)制代碼 代碼如下:var a = [2,3];var b = a;a = [];console.log(b);
這時(shí)候a和b就不是同一個(gè)數(shù)組了,清空了a而b還是指到之前的引用地址,除非你是故意的,否則這將會(huì)有隱患。
所以最佳的請(qǐng)空數(shù)組方式是:將length設(shè)置為0,即:
復(fù)制代碼 代碼如下:a.length = 0;
清空數(shù)組并塞入新數(shù)據(jù)的方法:
注意:splice 返回的是含有被刪除的元素的數(shù)組,沒(méi)有刪除的話返回空數(shù)組:
參考:
js清空數(shù)組的三種方法
文章名稱(chēng):javascript清空,javascript清空輸入框
分享URL:http://www.rwnh.cn/article48/dsdjdep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、App設(shè)計(jì)、商城網(wǎng)站、網(wǎng)站收錄、網(wǎng)頁(yè)設(shè)計(jì)公司、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
營(yíng)銷(xiāo)型網(wǎng)站建設(shè)知識(shí)