ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript_javascript スキルで配列をクリアする 3 つの方法

JavaScript_javascript スキルで配列をクリアする 3 つの方法

WBOY
WBOYオリジナル
2016-05-16 18:08:191370ブラウズ

方法 1、スプライス

コードをコピー コードは次のとおりです。

var ary = [1 ,2, 3,4];
ary.splice(0,ary.length);
console.log(ary); // 出力 []、空の配列、つまり

方法 2、長さを 0 に割り当てる
この方法は非常に興味深いものです。Java などの他の言語では、配列の長さは読み取り専用であり、割り当てることができません。たとえば、
コードをコピーします コードは次のとおりです。

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

Java ではエラーが報告され、コンパイルは成功しません。 JS では可能で、配列がクリアされます。
コードをコピーします コードは次のとおりです:

var ary = [1,2,3,4];
ary.length = 0;
console.log(ary) // 出力 []、つまり空の配列

現在、mootools ライブラリの配列の clear と mootools ライブラリの配列の empty は、このメソッドを使用して配列をクリアします。
方法 3、割り当ては []
コードをコピー コードは次のとおりです:

var ary = [1,2,3,4];
ary = []; // 空の配列を代入して元の配列をクリアします

メソッド 2 は配列の他の属性を保持します、方法 3 は保持されません。多くの人は、方法 2 は長さを再割り当てするだけであるのに対し、方法 3 はオブジェクトを再作成するため、より効率的であると考えています。テストした結果、最も効率的なのはまさに方法 3 です。テスト コード:
コードをコピー コードは次のとおりです。

var a = [];
for (var i=0; ia.push(i)
}
var start = new Date(); ];
a.length = 0;
var end = new Date();


テスト結果:

JavaScript_javascript スキルで配列をクリアする 3 つの方法上記の結果からわかるように、方法 3 の方が高速かつ効率的です。したがって、元の配列の他の属性が保持されない場合は、Ext で使用される方法の方が推奨されます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。