Objectオブジェクトについて[組み込みオブジェクト]

2017年2月2日

まずは「Objectオブジェクト」と、JavaScriptの文脈でよく記述される「オブジェクト」の違いについて説明します。

 

スポンサーリンク

 

 

「オブジェクト」は、様々なデータをまとめて扱うことのできるデータ型のことを指し、キーと値のセットであるプロパティで構成されています。

 

関連ページ

オブジェクトについて[オブジェクトリテラル][プロパティ][メソッド]

 

一方JavaScriptには、標準で組み込まれている「オブジェクト」があり、それらは「組み込みオブジェクト」と呼ばれています(またはビルトインオブジェクト、もしくはネイティブオブジェクトと呼ばれています)。

 

主な「組み込みオブジェクト」

Array
String
Boolean
Number
Math
Date
Object
Function
RegExp

Map/WeakMap(ES2015)
Set/WeakSet(ES2015)
Symbol(ES2015)
Proxy(ES2015)
Promise(ES2015)

 

 

「Objectオブジェクト」は組み込みオブジェクトの一つです。そして、全ての「オブジェクト」の基底となっているオブジェクトでもあり、他のオブジェクトに対して共通のプロパティやメソッドを提供する役割を持っています。

 

例えば、ObjectオブジェクトにはtoString()メソッドが定義されています。正確には、Object.prototypeで定義されています。toString()は、オブジェクトの値を文字列に変換して返すメソッドです。

 

関連ページ

prototype(プロトタイプ)について

 

そして、このtoString()メソッドは、他のオブジェクトでも利用することが可能です。つまり、全てのオブジェクトはObject.prototypeを継承しているので、Object.prototypeで定義されているtoString()メソッドが利用できるのです。

 

 

18行目では、作成したBookコンストラクタ関数から、bookオブジェクトを生成しています。toStringメソッド自体は自分で定義していませんが、19行目において、Objectオブジェクトから継承されたtoStringメソッドを利用しています。

 

 

 

 

LINEで送る
Pocket

Copyright © 2019 思考の葉 All Rights Reserved.  プライバシーポリシー