欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中清空數(shù)組的三種方法分享

 更新時(shí)間:2011年04月07日 23:31:24   作者:  
JavaScript中清空數(shù)組的三種方法分享,需要的朋友可以參考下。
方式1,splice
復(fù)制代碼 代碼如下:

var ary = [1,2,3,4];
ary.splice(0,ary.length);
console.log(ary); // 輸出 [],空數(shù)組,即被清空了

方式2,length賦值為0
這種方式很有意思,其它語(yǔ)言如Java,其數(shù)組的length是只讀的,不能被賦值。如
復(fù)制代碼 代碼如下:

int[] ary = {1,2,3,4};
ary.length = 0;

Java中會(huì)報(bào)錯(cuò),編譯通不過(guò)。而JS中則可以,且將數(shù)組清空了,
復(fù)制代碼 代碼如下:

var ary = [1,2,3,4];
ary.length = 0;
console.log(ary); // 輸出 [],空數(shù)組,即被清空了

目前 Prototype中數(shù)組的 clear 和mootools庫(kù)中數(shù)組的 empty 使用這種方式清空數(shù)組。  
方式3,賦值為[]
復(fù)制代碼 代碼如下:

var ary = [1,2,3,4];
ary = []; // 賦值為一個(gè)空數(shù)組以達(dá)到清空原數(shù)組

方式2 保留了數(shù)組其它屬性,方式3 則未保留。很多人認(rèn)為方式2的效率很高些,因?yàn)閮H僅是給length重新賦值了,而方式3則重新建立個(gè)對(duì)象。經(jīng) 測(cè)試 恰恰是方式3的效率高。測(cè)試代碼:
復(fù)制代碼 代碼如下:

var a = [];
for (var i=0; i< 1000000; i++){
a.push(i);
}
var start = new Date();
//a = [];
a.length = 0;
var end = new Date();
alert(end - start);

測(cè)試結(jié)果:

以上結(jié)果可看到:方式3更快,效率更高。因此如果不保留原數(shù)組的其它屬性Ext采用的方式更值得推薦。

相關(guān)文章

  • js 彈出菜單/窗口效果

    js 彈出菜單/窗口效果

    想象一下,你把一個(gè)重要內(nèi)容放在一個(gè)彈出窗口,又不聚集到這個(gè)窗口。讓使用屏幕閱讀器的同學(xué)情何以堪,只有當(dāng)他們 tab 到這頁(yè)面結(jié)束,還繼續(xù) tab,才可能找到這個(gè)彈窗
    2011-10-10
  • 微信小程序BindTap快速連續(xù)點(diǎn)擊目標(biāo)頁(yè)面跳轉(zhuǎn)多次問(wèn)題處理

    微信小程序BindTap快速連續(xù)點(diǎn)擊目標(biāo)頁(yè)面跳轉(zhuǎn)多次問(wèn)題處理

    這篇文章主要介紹了微信小程序BindTap快速連續(xù)點(diǎn)擊目標(biāo)頁(yè)面跳轉(zhuǎn)多次問(wèn)題處理,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-04-04
  • npm scripts 使用指南詳解

    npm scripts 使用指南詳解

    這篇文章主要介紹了npm scripts 使用指南詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • KnockoutJS 3.X API 第四章之表單submit、enable、disable綁定

    KnockoutJS 3.X API 第四章之表單submit、enable、disable綁定

    Knockout是一個(gè)以數(shù)據(jù)模型(data model)為基礎(chǔ)的能夠幫助你創(chuàng)建富文本,響應(yīng)顯示和編輯用戶界面的JavaScript類庫(kù)。這篇文章介紹了KnockoutJS 3.X API 第四章之表單submit、enable、disable綁定的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2016-10-10
  • js+css實(shí)現(xiàn)的簡(jiǎn)單易用兼容好的分頁(yè)

    js+css實(shí)現(xiàn)的簡(jiǎn)單易用兼容好的分頁(yè)

    使用html、js、css實(shí)現(xiàn)的簡(jiǎn)單易用兼容好的分頁(yè),具體的實(shí)現(xiàn)如下,感興趣的朋友可以參考下
    2013-12-12
  • JavaScript實(shí)現(xiàn)生成GUID(全局統(tǒng)一標(biāo)識(shí)符)

    JavaScript實(shí)現(xiàn)生成GUID(全局統(tǒng)一標(biāo)識(shí)符)

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)生成GUID(全局統(tǒng)一標(biāo)識(shí)符),本文寫成了一個(gè)GUID生成類,使用也非常方便,需要的朋友可以參考下
    2014-09-09
  • 開(kāi)啟Javascript中apply、call、bind的用法之旅模式

    開(kāi)啟Javascript中apply、call、bind的用法之旅模式

    在Javascript中,F(xiàn)unction是一種對(duì)象。Function對(duì)象中的this指向決定于函數(shù)被調(diào)用的方式,使用apply,call 與 bind 均可以改變函數(shù)對(duì)象中this的指向。
    2015-10-10
  • 借用Google的Javascript API Loader來(lái)加速你的網(wǎng)站

    借用Google的Javascript API Loader來(lái)加速你的網(wǎng)站

    加速頁(yè)面加載速度有一個(gè)方法就是把CSS和JS文件放到另外一個(gè)單獨(dú)的服務(wù)器上,這樣在訪問(wèn)量比較大的情況下可以分擔(dān)主服務(wù)器的壓力
    2009-01-01
  • iframe實(shí)用操作錦集

    iframe實(shí)用操作錦集

    這篇文章主要介紹了有關(guān)iframe的實(shí)用操作,包括高度、傳遞數(shù)據(jù)等等,感興趣的朋友可以參考下
    2014-04-04
  • JavaScript中遍歷的十種方法總結(jié)

    JavaScript中遍歷的十種方法總結(jié)

    這篇文章主要給大家介紹了關(guān)于JavaScript中遍歷的十種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12

最新評(píng)論