ちょっとディープな生物の世界

【JavaScript】インスタンス化する(newする)オブジェクトとしないオブジェクトの違い

インスタンス化(newする)とは?

インスタンス化とは、簡単にいうと「初期化」するということです。具体的にはnewを使ってオブジェクトの中身を初期化します。

new Date();
new Date(2025, 4, 3);
//値を入れる際にもnewを使います。

複数のオブジェとを作れるものはインスタンス化する

インスタンス化するオブジェクトとしないオブジェクトの違いは次の通りです。

  • 複数のオブジェクトを作れるオブジェクトはインスタンス化する。
  • 複数のオブジェクトを作れないオブジェクトはインスタンス化しない。

具体的には、Dateオブジェクトは複数のオブジェクトを作れるのでインスタンス化する必要がります。

new Date();
//現在の日時
new Date(2025, 4, 3);
//未来の日時

一方、Mathオブジェクトは全てが読み取り専用なので、書き換えることができません。そのため、複数のオブジェクトは作れません。使用する際にはnewが必要ありません。

const math = Math.PI

また、windowオブジェクトはブラウザウィンドウを指し、documentオブジェクトは表示されているHTMLそのものを示しているため、複数のオブジェクトを作れないため、newは必要ありません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です