Javascript

reverse()は破壊的メソッド【JS】

配列の逆順ソートには reverse() が使えるが、破壊的メソッドなので何かと気を遣う必要があります。
非破壊的に使う場合は、事前にslice()で配列のコピーを作成し、それをreverse()します。

結論

  • 元の配列が変わってもOK
    • array.reverse()
  • 元の配列は残したい
    • array.slice().reverse()

let array = [1,2,3,4,5]

// 破壊的
array.reverse();
// => [5,4,3,2,1]
console.log(array);
// => [5,4,3,2,1]

// 非破壊的
array.slice().reverse();
// => [5,4,3,2,1]
console.log(array);
// => [1,2,3,4,5]

まとめ

javascriptで、配列を逆順に取得するTipsを紹介しました。

jsはなんとなく緩い言語なイメージがあるのですが、破壊的メソッド参照渡しだったりと
不意に忘れてしまう要素も結構あるので、注意していきたいです。

他にも破壊的メソッドは色々あるので、失敗する度に自戒の念として書き残していきたいですね・・・

ピックアップ記事

  1. 【Blender】Bumpを使用した質感表現の方法
  2. 【Blender】起動時に強制終了してしまう問題
  3. 【Blender】アニメーションでポーズを左右反転してコピペしたい時
  4. 【Rails】findメソッドで連想配列から指定した値を検索する
  5. 【Blender】zip版のBlenderをBlender Launcherに移…

関連記事

 
  1. Javascript

    Object.assignではなく、スプレッド構文を使う【JS】

    Object.assignでパラメータの複製とか追加を実装していたの…

  2. Javascript

    パラメータをobjectでまとめて渡す【Vue】

    フロントエンドをvueで実装しているアプリがあります。…

カレンダー

2023年9月
 123
45678910
11121314151617
18192021222324
252627282930  

最近の記事

  1. Blender

    【Blender】アニメーションでポーズを左右反転してコピペしたい時
  2. Blenderの複数バージョンを簡単に管理できるBlenderLauncherの使い方

    Blender

    【Blender】複数バージョンを簡単に管理できる、BlenderLaunche…
  3. Blender

    起動時の設定をカスタムする【Blender】
  4. 慣れれば3分!Bumpノードを使用した質感表現の方法

    Blender

    【Blender】Bumpを使用した質感表現の方法
  5. Ruby on Rails

    【Rails】modelを作成する
PAGE TOP