Javascript

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

Object.assignでパラメータの複製とか追加を実装していたのですが、
スプレッド構文を使えばもっと短くかけるよね、というTipsです。

スプレッド構文自体の使い方はこんな感じです。

# 配列もしくはオブジェクト
const Hoge = [ 'foo', 'bar' ]

# 別のリストの中で、配列を展開する
[...Hoge, 'hoge']
=> (3) ['foo', 'bar', 'hoge']

結論

今までObject.assignを使用していましたが、スプレッド構文を使う事でこんな風に書けます。

# オブジェクトがあって、プロパティを追加したい時
let params = { foo: 1, bar: 2 }

# 今まではこう書いていた
Object.assign(params, { hoge: 3 })

# スプレッド構文でこのように書ける
{ ...params, hoge: 3 }
=> {foo: 1, bar: 2, hoge: 3}

環境

OS: MacOS
メモリ: 32GB

Dependents
Rails6
Ruby 2.6
CentOS7 on Vagrant
Mysql 5.7

まとめ

今までObject.assignを使っていましたが、スプレッド構文の方がスマートに書けますし、慣れてくると読解もしやすいです。
ただ、スプレッド構文はshallow copyなので、ネストしているオブジェクトを扱う場合には注意が必要です。

ピックアップ記事

  1. 【Blender】アニメーションでポーズを左右反転してコピペしたい時
  2. 【Blender】Bumpを使用した質感表現の方法
  3. 【Blender】MMDファイルをBlenderにImportするアドオン
  4. 【CSS】おしゃれなラジオボタンを作る
  5. 【Blender】複数バージョンを簡単に管理できる、BlenderLaunche…

カレンダー

2022年1月
 12
3456789
10111213141516
17181920212223
24252627282930
31  

最近の記事

  1. gitでファイル変更の一部をコミットする
  1. Blender

    【Blender】起動時に強制終了してしまう問題
  2. Blender

    【Blender】レンダリング結果を新規ウィンドウで開かないようにする
  3. WordPress

    【WPテーマ自作】ローカル環境でWP開発ができる「Local」の導入
  4. WordPress

    【WPテーマ自作】UnderScoresの導入
  5. Ruby on Rails

    【Rails】modelを作成する
PAGE TOP