【JavaScript】at()で配列の後ろから何番目かでインデックス指定する
更新日:2023/06/20
ECMAScript2022で、配列(Arrayオブジェクト)にat()メソッドが追加されました。
これを使用すると、配列の最後から相対的にインデックス指定できます。
at()の構文
Arrayオブジェクトのat()は、次のような構文です。
Array.prototype.at ( index )
indexは整数値です。
小数を含んでいてもエラーになりませんが、評価時に小数部分が切り捨てられます。
indexが正の値の時は、indexと同じ名前のプロパティ値を返します。
簡単に言うと、配列[ index ] が返ります。
負の値の時は、配列の長さ(lengthプロパティ) - indexの結果と同じ名前のプロパティ値を返します。
こちらは、配列[ 配列.lenght + index ]です。
配列の後ろから相対指定の例
配列の最後の値を取得するとき、-1を指定します。
最後から3番目の値を取得なら、-3を指定します。
const array = [0,1,2,3];
// 最後の値を取得
console.log( array.at(-1) ); // 3
// 最後から3番目の値を取得
console.log( array.at(-3) ); // 1
先頭から取得するときは0から数えますが、後ろからの時は-1からです。
少し分かりにくいですね。
配列の長さから差し引かれる、と理解しておく方がわかりやすいかもしれません。
更新日:2023/06/20
関連記事
スポンサーリンク
記事の内容について
こんにちはけーちゃんです。
説明するのって難しいですね。
「なんか言ってることおかしくない?」
たぶん、こんなご意見あると思います。
裏付けを取りながら記事を作成していますが、僕の勘違いだったり、そもそも情報源の内容が間違えていたりで、正確でないことが多いと思います。
そんなときは、ご意見もらえたら嬉しいです。
掲載コードについては事前に動作確認をしていますが、貼り付け後に体裁を整えるなどをした結果動作しないものになっていることがあります。
生暖かい視線でスルーするか、ご指摘ください。
ご意見、ご指摘はこちら。
https://note.affi-sapo-sv.com/info.php
このサイトは、リンクフリーです。大歓迎です。