spliceの使い方

5111 ワード

splice()メソッドは、行列から項目を追加/削除し、削除された項目を返します.この方法は元の配列を変える.文法は以下の通りです
arrayObject.splice(index,howmany,item1,.....,itemX)
各パラメータは以下の通りです.index:必須項目であり、整数であり、項目を追加/削除する位置を規定しています.負の数を使うと、配列の最後から位置を指定できます.indexは0から始まり、0は最初の位置を表します.howmany:必須項目です.削除する項目の数.0に設定すると、項目は削除されません.アイテム1、…、アイテムX:オプション.配列に追加する新しい項目.
戻り値は次の通りです.array配列には、削除された項目の新しい配列が含まれています.もしあれば.
説明:splice()方法は、indexから開始された0つ以上の要素を削除し、削除された要素をパラメータリストで宣言された1つ以上の値で置き換えることができる.arrayObjectから要素が削除された場合、削除された要素を含む配列が返されます.
すべての主流ブラウザはsplice()方法をサポートしています.splice()方法はslice()方法とは違って、splice()方法は直接的に配列を修正します.
いくつかの例を見ましょう.注意してください.次の配列の中の括弧は省略してはいけません.
例一:
var arr = new Array(["George","John","Thomas","James","Adrew","Martin"]);
document.write(arr + "
"
); arr.splice(2,0,"William"); document.write(arr + "
"
);
これは、2番目の位置(すなわちindex=1)から0項目を削除し、削除された位置(すなわち2番目の位置)にWilliamを挿入することを意味する.出力は以下の通りです
George,John,Thomas,James,Adrew,Martin
George,John,William,Thomas,James,Adrew,Martin
例二:
var arr = new Array(["George","John","Thomas","James","Adrew","Martin"]);
document.write(arr + "
"
); arr.splice(2,1,"William"); document.write(arr);
これは、2番目の位置から1つの項目を削除し、削除された位置にWilliamを挿入することを意味します.出力は以下の通りです
George,John,Thomas,James,Adrew,Martin
George,John,William,James,Adrew,Martin
例三:
var arr = new Array(["George","John","Thomas","James","Adrew","Martin"]);
document.write(arr + "
"
); arr.splice(2,3,"William"); document.write(arr);
これは、第2の位置から3つの項目を削除し、削除した位置にWilliamを挿入することを意味します.出力は以下の通りです
George,John,Thomas,James,Adrew,Martin
George,John,William,Martin
例四:
var arr = new Array(["George","John","Thomas","James","Adrew","Martin"]);
document.write(arr + "
"
); arr.splice(2,2); document.write(arr);
これは第2の位置から2つの項目を削除するという意味で、出力は以下の通りです.
George,John,Thomas,James,Adrew,Martin
George,John,Adrew,Martin
例5:
var arr = new Array(["George","John","Thomas","James","Adrew","Martin"]);
document.write(arr + "
"
); arr.splice(2,2,"William","Robert"); document.write(arr);
これは、2番目の位置から2つの項目を削除し、削除位置にWilliam、Robertを挿入することを意味します.出力は以下の通りです
George,John,Thomas,James,Adrew,Martin
George,John,William,Robert,Adrew,Martin