array.slice と array.splice

.slice と .splice はどちらも、配列から一部を取り出す、もしくは一部を取り除いた配列を作る際に必要となるが、.slice は元の配列に変更がされない=非破壊、.splice はもとの配列に変更を加える=破壊的変更である点が異なる。そのため redux の state 操作のように immutable な操作を行うことが必要な場合には、.slice が主に使われる。

// slice(n)はn番目を含んでそれ以降の配列を返す
var newList = list.slice(2)
//console.log(newList);

// slice(0,n)は0から、n番目を含まない、その範囲の配列を返す
var newList = list.slice(0,2)
//console.log(newList);

// slice(m,n)はmから、n番目を含まない、その範囲の配列を返す
var newList = list.slice(1,2)
//console.log(newList);

配列の一部を取り除く

配列である list から、index 番目の要素を取り除いた配列を返す。

const list = [1,2,3,4,5,6,7,8,9]

const removeCounter = (list, index) => {
  return [
    ...list.slice(0, index),
    ...list.slice(index + 1)
  ];
};

console.log(removeCounter(list,1))
list.slice(0, index) //0から index 番目を除くところまでの配列を返す。
list.slice(index + 1) // index+1 番目から始めるので index 番目の要素は除かれる。それ以降のすべての配列を返す。

results matching ""

    No results matching ""