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. 【Rails】selectメソッドで特定の条件を満たす要素を取得する
  2. git add -p でファイルの一部をコミットする【Git】
  3. 【Blender】MMDファイルをBlenderにImportするアドオン
  4. 【Blender】Bumpを使用した質感表現の方法
  5. 【Blender】拡張機能(アドオン)の基本的な使い方

関連記事

 
  1. Javascript

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

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

  2. Javascript

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

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

カレンダー

2024年4月
1234567
891011121314
15161718192021
22232425262728
2930  

最近の記事

  1. Blender

    【Blender】拡張機能(アドオン)の基本的な使い方
  2. 慣れれば3分!Bumpノードを使用した質感表現の方法

    Blender

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

    【Rails】railsでIndex name ‘xxx’…
  4. Blender

    【Blender】zip版のBlenderをBlender Launcherに移…
  5. gitでファイル変更の一部をコミットする

    git

    git add -p でファイルの一部をコミットする【Git】
PAGE TOP