[Node.js] JSONをキレイに整形して出力する

  • このエントリーをはてなブックマークに追加
  • LINEで送る
この記事は 2020年5月8日 に書かれたものです

小ネタです。
結論から言うと、JSON.stringify()の第2引数にnull、第3引数に数値を指定することで人間がパッと見て分かるよう整形した文字列が返されます。

const data = [
  {
    "season": "202004",
    "title": "乙女ゲームの破滅フラグしかない悪役令嬢に転生してしまった…",
    "company": "SILVER LINK."
  },
]

// 機械に優しい
const str1 = JSON.stringify(data);
console.log(str1)

// 人間に優しい
const str2 = JSON.stringify(data, null, 2);
console.log(str2)
- Sponsored Link -

実際に実行すると以下の通り。str1は直接プログラムから読み込むのに適しています。通常RESTfulAPIなどに渡す場合はこちらを利用します。

[{"season":"202004","title":"乙女ゲームの破滅フラグしかない悪役令嬢に転生してしまった…","company":"SILVER LINK."}]

str2は第3引数で渡した数値の分だけインデントされ人間がパッと見て分かる書式になっています。デバッグなどで利用する場合はこちらが便利ですね。

[
  {
    "season": "202004",
    "title": "乙女ゲームの破滅フラグしかない悪役令嬢に転生してしまった…",
    "company": "SILVER LINK."
  }
]

なお、第3引数で指定する数値は1〜10の間で指定し、それ以上大きい値は最大値である10として扱われるようです。

これが Number のときは、空白として使う空白文字の数を示します。この数の上限は10です (それより大きい数値は、単に 10 となります)。 1 より小さい値は空白を使わないことを示します。
※MDNより

それはさておき「はめふら」面白いですよね。

参考ページ

コメント

コメント欄は休止中です。お問い合わせはこちらからどうぞ。ご質問はTwitterにリプを投げてください。

このブログを応援する

お寄せいただいたお気持ちは全額サーバ代や次の記事を執筆するための原資として活用させていただいております。この記事が参考になった場合などぜひご検討ください。

PayPal(ペイパル)
PayPalで300円支払う
※金額は任意で変更できます。
※100円でも泣いて喜びますw
※住所の入力欄が現れた場合は「no needed」を選択ください
これまでのご協力者さま
- Sponsored Link -