HTMLの<pre>
セクションに表示するには、いくつかのJSONをあらかじめ確認する必要があります。javascript - 最初のレベルでJSON属性のキーリンクを作成する
私が使用してJavaScriptコード作業..「/ドキュメント#のattributeKeyText」に私は関係なく、すべての属性値の、最初のレベルでキーを属性したいと思います今
function transformJson(k, v) { if (k === 'href' && typeof v === 'string') { var label = v.replace(/&/gi, '&'); return '<a href=' + v + '>' + label + '</a>'; } return v; } function jsonFormat(jsonString) { var jsonObj = JSON.parse(jsonString, transformJson); return JSON.stringify(jsonObj, undefined, 2) .replace(/\s"(\w*)":/g, ' "<span class="key">$1</span>":') .replace(/:\s"(.*)"/g, ': "<span class="string">$1</span>"'); };
、リンク 。
var jsonToPrettify = {
"href": "link/me",
"nonHrefButMakeThisKeyALink": "some_text",
"obj": {
"href": "link/me",
"thisKeyWontBeALinkInsteadBecauseHasAParent": "some_text"
}
}
console.log(jsonFormat(JSON.stringify(jsonToPrettify)));
どうすれば実現できますか? 現在の属性に親オブジェクトがないことを確認するにはどうすればよいですか?
おかげ
UPDATE:現在のバージョンの
出力は次のとおりです。
{
"<span class="key">href</span>": "<span class="string"><a href=link/me>link/me</a></span>",
"<span class="key">nonHrefButMakeThisKeyALink</span>": "<span class="string">some_text</span>",
"<span class="key">obj</span>": {
"<span class="key">href</span>": "<span class="string"><a href=link/me>link/me</a></span>",
"<span class="key">thisKeyWontBeALinkInsteadBecauseHasAParent</span>": "<span class="string">some_text</span>"
}
}
だから私はちょうど
オブジェクトをJSONにストリング化して解析し、それを再び文字列化するのはどうですか? – Oriol
私は他のサービスから文字列形式のjsonを受け取ります。そのconsole.logは、コンソール内の質問全体をコピーし、実際にそれを見ることを許可するだけです.. –
これは助けることができます.. http://stackoverflow.com/questions/13518762/change-key-name-in-nested -json-structure –