ホームページ  >  記事  >  ウェブフロントエンド  >  JS 配列操作メソッド concat()、slice()、splice() についての深い理解

JS 配列操作メソッド concat()、slice()、splice() についての深い理解

yulia
yuliaオリジナル
2018-09-14 15:06:181875ブラウズ

最近かなり暇になったので、学んだ知識をまとめてみました。 この記事では、配列、concat()、slice()、splice() のさまざまな操作方法をまとめます。困っている友達はぜひ参考にしてみてください。

concat() メソッド

concat() メソッド: 現在の配列内のすべての項目に基づいて新しい配列を作成します。

具体的なプロセスは次のとおりです。 concat() のパラメーターがある場合は、まず配列のコピーを作成し、受け取ったパラメーターをコピーの末尾に追加します。パラメーターが渡されない場合は、新しく構築された配列を返します。現在の配列をコピーしてコピー配列を返すだけです。
concat() のパラメータには、新しい配列または文字列を指定できます。

var colors = ["red","green","blue"];
var colors2 = colors.concat("yellow",["black","brown"]);
alert(colors);
alert(colors2);

結果は、colors は配列 ["red", "green", "blue"] です;

colors2 は配列 ["red", "green", "blue", " yellow"," black",”brown”];
concat() メソッドは現在の配列を使用して新しい配列を再作成するだけなので、現在の配列は変更されません (色の配列は変更されません)。

slice() メソッド

slice() メソッド: 現在の配列内の 1 つ以上の項目に基づいて新しい配列を作成します。

slice() メソッドには、1 つまたは 2 つのパラメーター (配列のインデックス値、0、1、2... を表す) を指定できます。パラメータを受信した場合: 現在の配列内のパラメータの位置から現在の配列の末尾までのすべての項目を返します。 2 つのパラメータを受け取った場合: 現在の配列内の 2 つのパラメータ位置の間にあるすべての項目を返しますが、2 番目のパラメータ位置にある項目は返しません。
パラメータは負の数にすることもできます。これは最後から数えることを意味し、-1 は最後の数を意味し、使用方法は正の数と同じです。

var colors = ["red","green","blue","yellow","black","brown"];
var colors2 = colors.slice(2);
var colors3 = colors.slice(1,4);
var colors4 = colors.slice(2,-2);
var colors5 = colors.slice(-3,-1);
console.log(colors2);
console.log(colors3);
console.log(colors4);
console.log(colors5);

結果は次のようになります: ["青"、"黄"、"黒"、"茶色"]

["緑"、"青"、"黄"]
["青" " , "黄"]
["黄", "黒"]
さらに、slice() メソッドを使用して配列を削除することもできます。

Array.prototype.remove = function(from, to) {
    var rest = this.slice((to || from) + 1 || this.length);
    this.length = from <0 ? this.length + from : from;
    return this.push.apply(this, rest);
};

For

rest = this.slice((to || from) + 1 || this.length);

if to が 0 に等しくなく、(to||from) が to に等しく、to 1 が 0 に等しくない場合、((to || from) 1 || this.length) は 1) になります。 to 1=0, ((to || from) 1 || this.length) は this.length;

to=0 の場合、(to||from) は from 1 が 0 に等しくない場合、 ((to || from) 1 || this.length) は 1 からです。from 1=0 の場合、((to || from) 1 || this.length) は this.length です。

splice() メソッド

splice() の主な目的は、現在の配列の中央に項目を挿入することであり、削除、挿入、置換を実行できます。オペレーション。元の項目から削除された項目を含む配列を返します (削除されない場合は、空の配列が返されます)

Delete: 2 つのパラメーター、削除される開始項目の位置と削除された項目の数。

var colors = ["red","green","blue"];
var removed = colors.splice(1,2);
alert(colors);      //red
alert(removed);     //green,blue

Insert: 2 つの基本パラメータ (つまり、削除操作の 2 つのパラメータ タイプ) と挿入される項目のパラメータを含む、任意の数の項目を指定された位置に挿入します。は開始位置と 0 (削除する項目の数は 0 項目である必要があります)、挿入する項目パラメーターは任意の数 (「赤」、「緑」、「青」) にすることができます。

var colors = ["red","green","blue"];
var removed = colors.splice(1,0,"yellow","orange");
alert(colors);      //"red","yellow","orange","green","blue"
alert(removed);     //空数组

置換: 指定された位置に任意の数のアイテムを挿入し、任意の数のアイテムを削除します。挿入されたアイテムの数と削除されたアイテムの数は異なっていても構いません。パラメータには、2 つの基本パラメータ (つまり、削除操作の 2 つのパラメータ タイプ) と、挿入される項目のパラメータが含まれます。

var colors = ["red","green","blue"];
var removed = colors.splice(1,1,"purple","black");
alert(colors);    //"red","purple","black","blue"
alert(removed);   //"green"

実際、splice() メソッドには、削除項目の 2 つの基本パラメータと、任意の数の挿入パラメータが含まれていると一般的に理解されています。削除項目の 2 つの基本パラメータのうちの最初のパラメータは、削除位置を指定します。 2 番目は削除項目を指定します。番号が 0 の場合、位置を指定するだけの機能になります。挿入項目パラメータの数に制限はなく、省略することもできます。splice() メソッドは削除操作のみを実行します。


以上がJS 配列操作メソッド concat()、slice()、splice() についての深い理解の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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