JS配列の要素を削除する方法

亚连
亚连オリジナル
2018-06-08 10:52:223350ブラウズ

ここで、配列内の要素を削除するための JS メソッドを共有します。これは優れた参考値なので、皆さんのお役に立てれば幸いです。

配列内で指定された要素を削除します

まず、配列内の指定された要素の位置、つまりインデックスを見つけるための JS 配列オブジェクトの関数を定義できます。コードは次のとおりです:

Array.prototype.indexOf = function(val) { 
for (var i = 0; i < this.length; i++) { 
if (this[i] == val) return i; 
} 
return -1; 
};

。次に、これを使用して要素のインデックスを取得し、js 配列の固有関数を使用して要素を削除します:

コードは次のとおりです:

Array.prototype.remove = function(val) { 
var index = this.indexOf(val); 
if (index > -1) { 
this.splice(index, 1); 
} 
};

このようにして、たとえば、このような関数が構築されます。 :

var emp = [&#39;abs&#39;,&#39;dsf&#39;,&#39;sdf&#39;,&#39;fd&#39;]

'その中の fd ' を削除したい場合は、次を使用できます:

emp.remove(&#39;fd&#39;);

配列の項目を削除します

splice(index,len,[item]) 注: このメソッド元の配列が変更されます。

spliceには3つのパラメータがあり、配列内の1つまたは複数の値を置換/削除/追加するために使用することもできます

index:配列の開始添え字len:置換/削除の長さ item:削除の場合の置換値操作項目は空です

例: arr = ['a','b','c','d']

削除

//删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变) 
var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr.splice(1,1); 
console.log(arr); 
//[&#39;a&#39;,&#39;c&#39;,&#39;d&#39;]; 
 
 
//删除起始下标为1,长度为2的一个值(len设置2) 
var arr2 = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;] 
arr2.splice(1,2); 
console.log(arr2); 
//[&#39;a&#39;,&#39;d&#39;]

置換

//替换起始下标为1,长度为1的一个值为‘ttt&#39;,len设置的1 
var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr.splice(1,1,&#39;ttt&#39;); 
console.log(arr);   
//[&#39;a&#39;,&#39;ttt&#39;,&#39;c&#39;,&#39;d&#39;] 
 
 
var arr2 = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr2.splice(1,2,&#39;ttt&#39;); 
console.log(arr2);   
//[&#39;a&#39;,&#39;ttt&#39;,&#39;d&#39;] 替换起始下标为1,长度为2的两个值为‘ttt&#39;,len设置的1

追加---- lenは0 に設定すると、 item は追加された値になります

var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr.splice(1,0,&#39;ttt&#39;); 
console.log(arr);   
//[&#39;a&#39;,&#39;ttt&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;] 表示在下标为1处添加一项&#39;ttt&#39;<span style="font-size:14px;font-family:Arial, Helvetica, sans-serif;background-color:rgb(255,255,255);"> </span>

delete メソッドが配列内の要素を削除した後、添字の下にマークされた値は未定義に設定され、配列の長さは変更されません

var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
delete arr[1]; 
arr; 
//["a", undefined × 1, "c", "d"] 中间出现两个逗号,数组长度不变,有一项为undefined

上記は皆さんのためにまとめたものです。将来皆さんのお役に立てれば幸いです。

関連記事:

vue2.0でのdatepickerの使い方について

JavaScriptメディエーターモード(詳細チュートリアル)

jQueryでDom要素を使うには?

以上がJS配列の要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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