【javascript】値渡しと参照渡しの違いをまとめてみた。【プリミティブ型・オブジェクト型】

javascriptの値渡しと参照渡しの違いをまとめてみました!

プリミティブ型とオブジェクト型で渡し方が違う。

結論から言うと、javascriptの場合

  • String
  • Boolean
  • Number

などのプリミティブ型が値渡し。

  • Object
  • Array
  • Function

などのオブジェクト型が参照渡しになります。

参照渡しと値渡しの挙動の違い

こちらのように、値渡しの場合は値がコピーされます。

しかし、参照渡しの場合、参照しているアドレスがコピーされるので、片方の変数の値を変更すると、もう一つの値も変更されます。

関数の引数でも、値渡しと参照渡しで挙動が異なる

このように、引数の値の場合でも、参照渡しと値渡しで挙動が異なります。

基本だけど、意外と忘れてしまう

基本中の基本ですが、意外と忘れがちな参照渡しと値渡しの違い。

思わぬ失敗につながらないように、しっかりと覚えておきます!

ABOUTこの記事をかいた人

新卒でノマドワーカー(webデザイナー)として独立し、半年で月収100万円を達成する。その後、事務所を売却(バイアウト)したり、Youtuber(最高月間視聴回数109万回、チャンネル登録者1万人)をしたり、Openrecの公式配信者としてゲーム生実況をしたり、ベンチャー企業のCOOをしたり、パラレルキャリアを歩んできました。 2019年にミニマムライフコストを不労所得で稼げるようになったため、いまは、お金のことを考えずに、様々な企業でエンジニア修行をさせていただきながら、複数のメディアやアプリとweb制作事務所を運営しています。 趣味は株式投資(米国・日本株メイン)で、トレードを楽しむ日も多いです!