この日記は私的なものであり所属会社の見解とは無関係です。 GitHub: takahashikzn

JSONにコメントを付けるなら空文字キーがオススメ

JSONを設定ファイルとして使うとき、コメントを付けたくなりますよね。 または、お決まりのコピーライトヘッダを入れるとか。

JSON コメント」でググったところ、わざと同じキー名の値を宣言するというテクが使えるとありますが、実装依存なのであまり良くないかと。 それに混乱しますし。

似たような方法になりますが、僕が選んだのは

{
    "": "copyright 2016 root42 Inc.",
    "": "コメントです",

    "key1": 123,
    "key2": "abc"
}

のように空文字をキーとして複数宣言する方法です。

キー一覧をトラバースした時に空文字が取得できてしまうのが問題ではあるものの、ツールの設定ファイル(.eslintrcなど)として使う限りは無視されるので実害は無いようです。

2016-01-06 23:50追記 

babelはダメでした…

.babelrcに空文字キーがあるとbabel-cliが "Unknown option" と怒り出します orz