【JSリファレンス】Array.prototype.splice()

更新日:2024/06/14

Array.prototype.splice()は、Arrayオブジェクト(Arrayコンストラクターのインスタンス)プロトタイプチェーンに組み込まれるメソッドです。
指定された位置から指定された個数の配列要素を取り除き、指定された位置に指定された要素を挿入します。

※元となる配列の内容が変更されます。
同様の機能にArray.prototype.toSpliced()がありますが、こちらは元となる配列の内容を変更しません。

 

■構文

Array.prototype.splice ( start, deleteCount, ...items )
  1. start: 削除および挿入を開始するインデックス

    負数のときは配列の後方から指定されたとみなす。
    具体的には、lengthプロパティ + start を使用する。

  2. deleteCount: 省略可能。規定値はlengthプロパティ - start

    欠番インデックスを含めた、削除する要素の個数を指定する。

  3. ...items: 省略可能。

    挿入する要素の羅列を指定する。

削除された要素をメンバに持つ新しい配列

 

■使用例

const array = [1,2,,4,5];
console.log( array.splice(2,2,100,200,300) ); // [ <1 empty item>, 4 ]
console.log( array );                         // [ 1, 2, 100, 200, 300, 5 ]

 

■備考

call()等でアレイライクオブジェクトを対象にすることも可能です。

const arrayLike = { 0:1 ,1:2 , 2:3, length:3 };
console.log( Array.prototype.splice.call( arrayLike, 2,1,100,200 ) );
  // [ 3 ]
console.log( arrayLike ); // { '0': 1, '1': 3, '2': 7, length: 3 }
  // { '0': 1, '1': 2, '2': 100, '3': 200, length: 4 }

 

関連ページ

更新日:2024/06/14

書いた人(管理人):けーちゃん

スポンサーリンク

記事の内容について

null

こんにちはけーちゃんです。
説明するのって難しいですね。

「なんか言ってることおかしくない?」
たぶん、こんなご意見あると思います。

裏付けを取りながら記事を作成していますが、僕の勘違いだったり、そもそも情報源の内容が間違えていたりで、正確でないことが多いと思います。
そんなときは、ご意見もらえたら嬉しいです。

掲載コードについては事前に動作確認をしていますが、貼り付け後に体裁を整えるなどをした結果動作しないものになっていることがあります。
生暖かい視線でスルーするか、ご指摘ください。

ご意見、ご指摘はこちら。
https://jsref.affi-sapo-sv.com/info.php

 

このサイトは、リンクフリーです。大歓迎です。