Array.prototype.shift()とは

2020/06/3

例のごとく、、

Arrayとは?


MDNによるとArrayは配列を構築するためのグローバルオブジェクトで、

配列とは複数の要素を管理格納してくれるリスト構造らしい。 正確ではないかもしれないが、僕の認識では配列はインデックス番号をもった

ビルドインオブジェクトと言う認識です。 配列を現実で例えると、出席簿みたいなもので、

番号と何かしらの要素(出席簿の場合は生徒の名前)が入ったリスト表みたいなイメージで良いと思う。

JavaScript の Array オブジェクトは、配列を構築するためのグローバルオブジェクトで、配列とは複数の要素の集合を格納管理するリスト構造です。 MDN

prototypeとは?


prototypeとはビルドインオブジェクトがあらかじめ持っているプロパティや

メソッドのことを言います。 正直まだ深く理解出来てない、、

Array.prototype.shift()とは


shift() メソッドは、配列から最初の要素を取り除き、その要素を返します。このメソッドは配列の長さを変えます。

MDN

ポイントは二つ。

1,配列の最初の要素を消して、配列の長さは1つ短くなります。

2,戻り値には配列から削除した要素を返します。

const array = [1,2,3]; const firstElement = array.shift(); console.log(array); /// Array[2,3] console.log(firstElement); /// 1

siftメソッドの混乱ポイントは

配列の長さが短くなる部分だと思う。

Arrayの別のメソッドには要素を消すけど長さは短くならないメソッドもあるので注意が必要。

最初の要素を消すって言う意味ではshitメソッドは直感的に使えるのがメリットだと思う。

shiftメソッドの中身はこんな感じかな?

const sift = (array){ array[0]を消す。 arrayの要素全てのインデックスを-1する。 return 新しくなった配列; }

上のサンプルはこちらで確認できます。