JavaScriptのオブジェクトとJSONの違い

基本的には同じだけど、以下の3点が違う。

JSON 違い JavaScriptのオブジェクト
書けない 末尾にカンマ( , )を書ける? 書ける
使えない キーにダブルクォーテーション以外使える? 使える
ある キーを宣言するときにクォーテーションで囲む必要がある? ない

末尾にカンマ( , )を書ける?

JavaScriptだと、以下のように末尾にカンマを書けるが

[
  {
    "name": "yamada",
    "age": 28,
  },
  {
    "name": "satou",
    "age": 40,
  },
];

JSONだとカンマを書くとエラーになるので、以下のように書く必要がある。

[
  {
    "name": "yamada",
    "age": 28
  },
  {
    "name": "satou",
    "age": 40
  }
]

キーにダブルクォーテーション以外使える?

JavaScriptだと、以下のようにキーを書くのにシングルクォーテーションも書けるが

[
  {
    'name': "yamada",
    'age': 28,
  },
  {
    'name': "satou",
    'age': 40,
  },
];

JSONだとダブルクォーテーションのみ。

[
  {
    "name": "yamada",
    "age": 28
  },
  {
    "name": "satou",
    "age": 40
  }
]

キーを宣言するときにクォーテーションで囲む必要がある?

JavaScriptだと、そもそもキー名をクォーテーションで囲む必要がない。(囲まなくても囲んでもどちらにせよ文字列として扱われる)

[
  {
    name: "yamada",
    age: 28,
  },
  {
    name: "satou",
    age: 40,
  },
];

 

おわり

コメント

タイトルとURLをコピーしました