3
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

階層構造 JSONの書き方

Last updated at Posted at 2024-04-10

JSONとは?

  • JSONJavaScript Object Notation)は「JavaScript Object Notation」の略で、{} や [] などJavaScriptオブジェクトの表現形式で記述する。
  • JavaScriptで使われることを想定したデータ構造なので、JavaScriptと相性が良い。
  • Python、Java、PHPなどの幅広い言語でも使われている。JavaScriptなどのクライアント言語とPythonなどのサーバサイド言語間のデータのやり取りで使われることが多い。

JSONの基本の書き方

  • JSONはキーと値がペアになっており、キーは文字列で、必ずダブルクォーテーション(")で囲む必要がある。
    ※文字列をシングルクォーテーションで囲むとエラーになる。
  • JSONは {} の中に、"キー"と"値"をコロン(:)で区切って記述する。
{"key1" : "value1"}

カンマで区切ると、キーと値の組み合わせを複数記述できます。

{"key1":"value1", "key2":"value2", "key3":"value3"}

行数が多くなってくると読みにくくなるので、適宜、改行とインデントを加える。

{
    "key1":"value1",
    "key2":"value2",
    "key3":"value3"
}

JSONの値のデータ型

JSONの値は、文字列、数値、真偽値、null、オブジェクト、配列のいずれかを指定できる。

  • 文字列(ダブルクォーテーションで囲む)
  • 数値(ダブルクォーテーションで囲まない)
  • bool値(true または false)
  • 配列
  • オブジェクト
  • null(ヌル値)
サンプル(文字列、数値、bool値、配列、オブジェクト、null)
{
    "key1":"value1",
    "key2":100,
    "key3":true,
    "key4":["apple","orange","banana"],
    "key5":{
        "area": "tokyo",
        "country": "Japan",
        "date": "2024/04/10"
    },
    "key6":null
}

JSONの階層構造(オブジェクト/配列のネスト)

JSONはネスト(入れ子構造)をサポートしており、オブジェクト内に別のオブジェクトや配列を含めることができる。

例1:値がオブジェクトになっている場合

{
    "key1":{
        "key1-1":"value1-1",
        "key1-2":"value1-2",
        "key1-3":"value1-3"
    },
    "key2":"value2",
    "key3":"value3"
}

例2:値がオブジェクトで、オブジェクトの中にがオブジェクトになっている場合

{
    "key1":{
        "key1-1":{
            "key1-1-1":"value1-1-1",
            "key1-1-2":"value1-1-2"
        },
        "key1-2":"value1-2",
        "key1-3":"value1-3"
    },
    "key2":"value2",
    "key3":"value3"
}

例3:オブジェクトが配列になっている場合

[
    {
        "key1":"value1"
    },
    {
        "key2":"value2"
    },
    {
        "key3":"value3"
    }
]

例4:値が配列で、配列の中がオブジェクトになっている場合

{
    "key1":[
        {"key1-1":"value1-1"},
        {"key1-2":"value1-2"},
        {"key1-3":"value1-3"}
    ],
    "key2":"value2",
    "key3":"value3"
}

例5:値が配列で、配列の中が配列になっている場合

{
    "key1":[
        ["value1-1","value1-2"],
        ["value2-1","value2-2"],
        ["value3-1","value3-2"]
    ],
    "key2":"value2",
    "key3":"value3"
}

以上

3
6
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?