node.jsで標準出力にRFCに準拠したJSONを出力する方法
node.js で標準出力にデータを出力する場合、
console.log() を使うと思うが、下記のように、
console.log({"foo":"bar", "hoge":"piyo"}); { foo: 'bar', hoge: 'piyo' }
- keyがダブルコーテーションで囲まれていない
- valueがシングルコーテーションで囲まれている
- そこそこ見やすいように改行してくれる
といったように出力される。
これを、
- keyがダブルコーテーションで囲まれている
- valueがダブルコーテーションで囲まれている
- 見やすいように成形しない
などのRFC準拠のJSONデータとして出力したい場合は、
以下のように、printf 構文で記述し、%jを指定する。
console.log("%j", {"foo":"bar", "hoge":"piyo"}); {"foo":"bar"}