動かざることバグの如し

近づきたいよ 君の理想に

JavaScriptでコメント付きのJSONをパースする方法

JSONCとは

通常のJSONではコメントを書くことができない。

しかし、JSONCという特殊なJSON形式が存在し、コメントを書くことができる。ただし、JSONCは特殊な形式であるため、通常のJSONパーサーではパースできない。

そこで、マイクロソフト社が開発したnode-jsonc-parserライブラリを使ってみた。

https://github.com/microsoft/node-jsonc-parser

node-jsonc-parserは、JSONC形式のファイルをパースするためのライブラリである。このライブラリは、通常のJSONと同じように扱うことができる。しかし、JSONC形式のファイルに含まれるコメントも正しくパースすることができる。

例えば、以下のようなJSONC形式のファイルがあったとする。

{
  // コメント
  "key": "value" // コメント
}

インストール

標準ライブラリではJSONCのパースはできないので別途ライブラリをインストールする必要がある

npm install node-jsonc-parser

使い方

簡単

import { parse as JSONCParse } from 'jsonc-parser';

const json: JsonData = JSONCParse(fs.readFileSync('./data.jsonc', 'utf8'));

このように、node-jsonc-parserを使うことで、JSONC形式のファイルを正しくパースすることができる。

参考リンク