ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptで配列要素を削除する方法

JavaScriptで配列要素を削除する方法

醉折花枝作酒筹
醉折花枝作酒筹オリジナル
2021-04-06 17:14:265679ブラウズ

方法: 1. delete を使用します。構文 "delete arr [要素の添え字を削除]"; 2. Pop() を使用します。構文 "arr.pop()"; 3. splice( )、構文 "arr.splice (開始位置、削除された項目の数)"; 4. プロトタイプ プロトタイプ メソッドを使用します。

JavaScriptで配列要素を削除する方法

このチュートリアルの動作環境: Windows 7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

JavaScript では、Object に加えて、Array 型 (配列) がおそらく最もよく使用される型です。 JavaScript の配列は、他の言語の配列と比べて非常に柔軟です。この種の柔軟性には長所と短所があり、長所は創造的であり、さまざまな柔軟なソリューションを提供できることですが、短所は、実際には柔軟性がありすぎて頭が働かなくなりやすいことです。制御不能で狂気です。

前にいくつかの言葉をからかった後、本題に戻りましょう。ここでは JavaScript で Array 要素を削除する 5 つの方法、つまり delete キーワード、pop() スタック メソッド、shift() キュー メソッドを使用します。 、splice()の操作メソッドとprototypeプロトタイプメソッド。

delete キーワード

JavaScript には、配列要素を削除 (クリア) するための delete キーワードが用意されています。

var colors = ["red", "blue", "grey", "green"];
delete colors[0];
console.log(colors); // [undefined, "blue", "grey", "green"]

delete を使用して要素を削除した後、配列の長さは変更されませんが、削除された要素は 未定義に設定されることに注意してください。

pop() スタック メソッド

JavaScript の Array オブジェクトは、ポップして最後の値を返すための pop() スタック メソッドを提供します。配列内の項目は、ある程度の削除として使用できます。

スタック データ構造のアクセス ルールは FILO (先入れ後出し) です。スタック操作では、スタックの先頭に項目が追加され、スタックの先頭から項目が削除されます。配列内の最後の項目を分割してその項目を返し、配列の長さを 1 つ減らすことができる、pop() メソッドを使用します。

var colors = ["red", "blue", "grey"];
var color = colors.pop();
console.log(color); // "grey"
console.log(colors.length); // 2

pop() メソッドが呼び出されると、配列は「灰色」の最後の項目を返し、配列には 2 つの要素だけが残っていることがわかります。

splice() 操作メソッド

JavaScript Array オブジェクトは、配列に対して特定の操作を実行するための splice() メソッドを提供します。 splice() はおそらく最も強力な配列メソッドであり、さまざまな方法で使用できますが、ここでは配列要素を削除する方法のみを紹介します。配列要素を削除する場合、最初に削除する項目の位置と削除する項目の数の 2 つのパラメータを指定するだけで、任意の数の項目を削除できます。

var colors = ["red", "blue", "grey"];
var color = colors.splice(0, 1);
console.log(color); // "red"
console.log(colors); // ["blue", "grey"]

splice(0, 1) メソッドが呼び出されると、配列から最初の項目から 1 つの項目が削除されることがわかります。

prototype プロトタイプメソッド

Array のプロトタイプにメソッドを追加することで削除の目的を達成できます。

Array.prototype.remove = function(dx) {  
if(isNaN(dx) || dx > this.length){
    return false;
  }
  for(var i = 0, n = 0;
   i < this.length; i++) {
    if(this[i] != this[dx]) {      
    this[n++] = this[i];
    }
  }  this.length -= 1;
};
var colors = ["red", "blue", "grey"];
colors.remove(1);
console.log(colors); // ["red", "grey"]

このメソッドは、実際には削除ロジックを自分で実装し、その削除メソッドを Array プロトタイプ オブジェクトに追加することで、この環境内のすべての Array オブジェクトがこのメソッドを使用できるようになります。変更することは可能ですが、実稼働アプリケーションでネイティブ オブジェクトのプロトタイプを変更することはお勧めできません。理由は簡単で、特定の実装でメソッドが欠落している場合、このメソッドをネイティブ オブジェクトのプロトタイプに追加すると、このメソッドをサポートする別の実装でコードを実行するときに名前の競合が発生する可能性があります。そうすると、誤ってネイティブ メソッドがオーバーライドされる可能性があります。

shift() キュー メソッド

JavaScript の Array オブジェクトは、ポップして返すための shift()キュー メソッドを提供します。配列内の項目は、ある程度の削除にも使用できます。

キュー データ構造のアクセス ルールは FIFO (先入れ先出し) で、キューはリストの最後に項目を追加し、リストの先頭から項目を削除します。 shift() メソッドを使用すると、配列内の最初の項目を削除して返し、配列の長さを 1 つ減らします。

var colors = ["red", "blue", "grey"];
var color = colors.shift();
console.log(color); // "red"
console.log(colors.length); // 2

shift() メソッドが呼び出されると、配列は最初の項目 (「赤」) を返し、配列には 2 つの要素だけが残っていることがわかります。

関連する学習に関する推奨事項: javascript (ビデオ)

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

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