2016-12-13 3 views
2

Я знаю тонна библиотеки может prettyprint JSON только углубленным/новую строка вещи, но здесь это линия моей тяжелой JSON:Ищете ФРАНТОВСКОГО JSon prettyprinter библиотеки JS

"Shape6":{"bounds_start":[0,-6,0],"bounds_end":[3,1,3],"origin":[2,15,-1],"mirror":true,"rotation":[0,0,0.837758],"uv":[15,30]} 

Всех библиотеки я нашел выход что-то вроде это:

"Shape6": { 
    "bounds_start": [ 
    0, 
    -6, 
    0 
    ], 
    "bounds_end": [ 
    3, 
    1, 
    3 
    ], 
    "origin": [ 
    2, 
    15, 
    -1 
    ], 
    "mirror": true, 
    "rotation": [ 
    0, 
    0, 
    0.837758 
    ], 
    "uv": [ 
    15, 
    30 
    ] 
} 

Но я ищу более читабельный способ, который не добавляет новые линии для небольших массивов, которые могут поместиться в одну линии, как:

"Shape6": { 
    "bounds_start": [0, -6, 0], 
    "bounds_end": [3, 1, 3], 
    "origin": [2, 15, -1], 
    "mirror": true, 
    "rotation": [0, 0, 0.837758], 
    "uv": [15, 30] 
} 

я действительно хочу это, потому что мой файл JSON, как 6k + линии на первом примере , если вы знаете, JS или библиотеку PHP (для AJAX целей)

я благодарю вас заранее (и простите за мой бедный английский :))

+0

Я написал один для своего собственного использования. Код можно найти здесь: https://github.com/slebetman/json-poll. Файл, который реализует красивую печать, - 'json-prettify.js'. В качестве альтернативы вы можете напрямую использовать мою программу для загрузки данных JSON с URL-адреса. Я использую его для опроса внутренних статистических данных сервера. – slebetman

+0

. Примечание. Мой код выводит HTML, но вы можете легко отредактировать его. – slebetman

ответ

0

вы можете просто сделать это с помощью функции JSON.stringify() (см ссылку https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify)

первый аргумент является объект, который вы хотите украсить, вторая функция, где мы можем указать логику отступа строки и новые разрывы строк, третий аргумент этой функции (теперь 4) - это номер для отступа для вашего beauti fied JSON данные

JSON.stringify(obj, function(k,v) 
{ 
if (v instanceof Array) 
    return JSON.stringify(v); 
    return v; 
}, 4); 
+0

Хотя этот фрагмент кода может решить вопрос, [включая пояснения] (http://meta.stackexchange.com/questions/ 114762/explaining-whole-code-based-answers) действительно помогает улучшить качество вашего сообщения. Помните, что вы отвечаете на вопрос читателей в будущем, и эти люди могут не знать причин вашего предложения кода. – DimaSan

+0

спасибо, конечно, понял! –