インデントJSONstringifyの出力
8998 ワード
既に
しかし、出力のインデントをカスタマイズして制御することができますか?
慣用
通常は
JSONStringifyの構文
構文
パラメータ
値
これはJSON文字列に変換する値です.あなたは、常にこれを必要とします.
代用品
シリアル化の動作を変更する関数または配列の配列.これは興味深いパラメータであるようですが、現在の問題を解決することはできません.
スペース
文字列か数値.
数値の場合、インデントのために追加する空白の量を定義します( max 10 ).
文字列の場合、出力をインデントするのに10文字まで含めることができます.
これは、これらの大きなオブジェクトを再び読みやすくするためのパラメータです.
スペースパラメータの使用
このように2つの空白をインデントできます:
去る前に
あなたが私のコンテンツが好きならば、私を訪ねてください、そして、おそらく、あなたはあなたが見るものが好きです!
JSON.stringify
をすでに使用しているかもしれません.JavaScriptのオブジェクトをすばやくログに記録する方法はほとんどありません.しかし、出力のインデントをカスタマイズして制御することができますか?
慣用
通常は
JSON.stringify
を使うことができます.const obj = {
propertyOne: 1,
propertyTwo: “2”,
propertyThree: {
nestedPropertyOne: 1.123
}
};
console.log(JSON.stringify(obj));
// prints => {"propertyOne":1,"propertyTwo":"2","propertyThree":{"nestedPropertyOne":1.123}}
それは完全にうまく動作しますが、オブジェクトが大きいほど、出力を読みにくくなります.大きなオブジェクトを再び読みやすくするために何かをする必要があります.JSONStringifyの構文
JSON.stringify
が実際に提供するものを見てみましょう.構文
JSON.stringify(value[, replacer[, space]])
パラメータ
値
これはJSON文字列に変換する値です.あなたは、常にこれを必要とします.
代用品
シリアル化の動作を変更する関数または配列の配列.これは興味深いパラメータであるようですが、現在の問題を解決することはできません.
スペース
文字列か数値.
数値の場合、インデントのために追加する空白の量を定義します( max 10 ).
文字列の場合、出力をインデントするのに10文字まで含めることができます.
これは、これらの大きなオブジェクトを再び読みやすくするためのパラメータです.
スペースパラメータの使用
このように2つの空白をインデントできます:
const obj = {
propertyOne: 1,
propertyTwo: “2”,
propertyThree: {
nestedPropertyOne: 1.123
}
};
// Using 2 is basically the same as using “ “.
console.log(JSON.stringify(obj, null, 2));
// prints =>
// {
// "propertyOne": 1,
// "propertyTwo": "2",
// "propertyThree": {
// "nestedPropertyOne": 1.123
// }
// }
タブをもっと気に入ったなら、以下のように簡単にできます.const obj = {
propertyOne: 1,
propertyTwo: “2”,
propertyThree: {
nestedPropertyOne: 1.123
}
};
console.log(JSON.stringify(obj, null, “\t”));
// prints =>
// {
// "propertyOne": 1,
// "propertyTwo": "2",
// "propertyThree": {
// "nestedPropertyOne": 1.123
// }
// }
任意の文字や文字の組み合わせをspace
引数として渡すことができます.const obj = {
propertyOne: 1,
propertyTwo: “2”,
propertyThree: {
nestedPropertyOne: 1.123
}
};
console.log(JSON.stringify(obj, null, “....”));
// prints =>
// {
// ...."propertyOne": 1,
// ...."propertyTwo": "2",
// ...."propertyThree": {
// ........"nestedPropertyOne": 1.123
// ....}
// }
とEmojis :const obj = {
propertyOne: 1,
propertyTwo: “2”,
propertyThree: {
nestedPropertyOne: 1.123
}
};
console.log(JSON.stringify(obj, null, “⏩”));
// prints =>
// {
// ⏩"propertyOne": 1,
// ⏩"propertyTwo": "2",
// ⏩"propertyThree": {
// ⏩⏩"nestedPropertyOne": 1.123
// ⏩}
// }
ルックスすごいですね.それはかなり簡単で、まっすぐ進む、とすぐに読みやすい方法で出力をフォーマットすることができます.しかし、これ(そして特にEmojisを使用する)がデバッグのためにより多くのものであることを覚えておいてください、そして、あなたがリモートインターフェース(残り/Graphql APIのように、それがサーバーかクライアントであるように)でするべきでない何かではありません.去る前に
あなたが私のコンテンツが好きならば、私を訪ねてください、そして、おそらく、あなたはあなたが見るものが好きです!
Reference
この問題について(インデントJSONstringifyの出力), 我々は、より多くの情報をここで見つけました https://dev.to/oliverjumpertz/indenting-json-stringify-s-output-5gfdテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol