オブジェクトリテラル【object literal】

オブジェクトリテラルとは?

プログラムソースコード中にオブジェクトデータと手続きをひとまとめにした構造)を直接記述する構文のこと。変数への代入やデータの受け渡しを簡潔に行える書き方として、JavaScriptをはじめ多くのプログラミング言語に用意されている。
オブジェクトリテラルのイメージ画像

JavaScriptのオブジェクトリテラル構文がよく知られており、これを用いて構造化データを表記したものを「JSON」(JavaScript Object Notation)という。Web APIデータ形式の事実上の標準として広く普及している。PythonRubyなど他の言語にも類似のオブジェクトリテラルのための記法が用意されている。

JavaScriptのオブジェクトリテラルでは、波括弧 {} の中に「キー」(名前)と「値」の組み合わせを並べてデータを表現する。例えば、コード中で「{ name: "田中", age: 30 }」と書けば、nameプロパティが「田中」、ageプロパティが「30」であるようなオブジェクトをその場で生成できる。

クラス定義やコンストラクタを別途用意しなくても、必要なデータ構造をコードの流れの中でそのまま作れるのが特徴である。値には文字列や数値だけでなく、配列や別のオブジェクト、さらには関数も指定できる。関数を値として持つキーは「メソッド」と呼ばれ、オブジェクトに振る舞いを持たせることができる。入れ子にしてより複雑なデータ構造を表現することも一般的である。

実際のプログラムでは、関数の引数として構造的なデータを渡したい場合に直接オブジェクトリテラルで記述したり、設定ファイルなどにオブジェクトリテラルでデータを記録したりするケースがよく見られる。なお、JavaScriptではオブジェクトのメンバーに型を定義する必要はないが、JavaScriptを拡張したTypeScriptのオブジェクトリテラルでは個々のメンバーにデータ型を宣言することができ、型にまつわるバグの抑制などに資する。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。