JSONとは
この記事では、Minecraftのアドオン制作にあたって、必ず使うJSONの書き方について解説しています。
そもそも、JSONとは、JavaScript Object Notationと言います。このJSONは、軽量なデータ交換フォーマットでMinecraftのアドオン以外でも様々なところで使われています。
JSONはひとでも読み書きしやすく、コンピュータにとっても解析や生成が簡単にできることが特徴になっています。
JSONの基本的な構造
JSONは基本的に、オブジェクトと配列の二種類で構成されています。
オブジェクトは名前(キー)と値(バリュー)のペアの集まりのことです。波括弧{}で囲まれ、キーと値はコロン:で区切られ、各ペアはカンマ,で区切ります。キーは文字列なので、ダブルクオーテーション”で囲まないといけません。
{
"key1": "value1",
"key2": "value2",
"key3": "value3"
}配列は値の順序付けです。角括弧[]で囲み、各値はカンマ,で区切ります。
[
"value1",
"value2",
"value3"
]値の書き方
値を書く際、いくつかのデータ型を使うことができます。
文字列(String)
文字列を指定できます。必ず、ダブルクオーテーション"で囲う必要があります。また、日本語も指定できます。
もし、"10"のように数値をダブルクオーテーションで囲むと、数値ではなく、文字列として読み取られます。
"apple", "りんご", "10"数値(Number)
整数や小数点を指定できます。
10, 5.5, -3ブーリアン(Boolean)
trueもしくはfalseで指定します。
true, false配列(Array)
上記のJSONデータを順序付けて格納したものです。配列なので、角括弧[]で囲む必要があります。
[ "apple", "potato", "chicken" ]オブジェクト(Object)
上記のJSONデータをキーと値のペアで格納したものです。
{ "name": "Taro", "age": 20 }ヌル(Null)
値が存在しないときに使うものです。使うことは基本的に無いと思います。
これらを組み合わせて書いたものが以下のサンプルコードになります。
{
"name": "Taro",
"age": 20,
"isStudent": false,
"address": {
"address1": "東京都",
"address2": "〇〇〇"
},
"phoneNumber": [
{
"type": "home",
"number": "03-XXXX-XXXX"
},
{
"type": "mobile",
"number": "090-XXXX-XXXX"
}
]
}JSONという書き方はコロン:の後ろに半角のスペースを入れたり、改行を入れたりすることがあります。これらは、コードを見やすくするために行っていますが、特にルールは無いため、自分自身で見やすいように書いても大丈夫です。
もう少し理解を深めるためには実際のコードを読まないとわからない部分もありますが、実際にJSONのコードを読んだり、書いたりすることで理解しやすくなると思います。
コメントアウトについて
コメントアウトとは、コード内にメモのように自由に文字を書き込むことができます。そして、コメントアウトされた場所はアドオンで読み込んでもすべて無視されます。
コードのメモや一時的にコードを削除する際に、一部分を消すのではなく、コメントアウトで無視されるようにするといった使い方をします。
コメントアウトは以下のように書きます。
// 1行すべてをコメントアウトする
/* 1行すべてをコメントアウトしない場合はこのように囲う */
/*
複数行コメントアウトする場合はこのように囲う
*/なお、一般的なJSONでは、コメントアウトが使えないため、テキストエディタではエラーとして表示される場合があります。その際、拡張子をjsonからjsoncにすることでエラーは発生しなくなります。

