コンパイラかく語りき

import { Fun } from 'programming'

【JavaScript】Array.prototype.sliceとArray.prototype.spliceの違い

Arrayの標準メソッドにはsliceとspliceがあります。紛らわしいですよね。しかも挙動まで似ています。

ちょっと自分の中で違いを忘れてきてしまっていたのでメモ。

 

Array.prototype.slice

配列の一部をコピーします。

 

gist1ab3b38c61b8413eae2b4981cfc614c7

 

developer.mozilla.org

 

Array.prototype.splice

配列の一部を切り出します。

 

gist72ba484578e82059e984e8137959909d

 

developer.mozilla.org

 

違い

  • 元の配列に変更を加えるかどうか
  • 第二引数が「終了位置」か「個数」か

 

ちなみに、spliceの場合は第三引数以降で追加要素を指定できますね。

giste2c3e4ae5c6ec8eed702be74237dcfa7