Что подразумевается под претензией JSON - PullRequest
2 голосов
/ 15 апреля 2011

Я слышал о сайтах, которые украшают / украшают JSON. Что это на самом деле означает?

Ответы [ 4 ]

7 голосов
/ 15 апреля 2011

Это означает более читабельную версию. Например. Следующее действительно JSON, но не очень хорошо читается:

{"outcome" : "success", "result" : {"name" : "messaging-sockets", "default-interface" : "external", "include" : [], "socket-binding" : {"messaging" : {"name" : "messaging", "interface" : null, "port" : 5445, "fixed-port" : null, "multicast-address" : null, "multicast-port" : null}, "messaging-throughput" : {"name" : "messaging-throughput", "interface" : null, "port" : 5455, "fixed-port" : null, "multicast-address" : null, "multicast-port" : null}}}, "compensating-operation" : null}

После симпатичной игры это может выглядеть так:

{
   "outcome":"success",
   "result":{
      "name":"messaging-sockets",
      "default-interface":"external",
      "include":[

      ],
      "socket-binding":{
         "messaging":{
            "name":"messaging",
            "interface":null,
            "port":5445,
            "fixed-port":null,
            "multicast-address":null,
            "multicast-port":null
         },
         "messaging-throughput":{
            "name":"messaging-throughput",
            "interface":null,
            "port":5455,
            "fixed-port":null,
            "multicast-address":null,
            "multicast-port":null
         }
      }
   },
   "compensating-operation":null
}
1 голос
/ 15 апреля 2011

Это делает ваш код красивым, то есть делает отступ, гарантирует, что содержимое выровнено одинаковым образом, все круглые скобки размещаются одинаковым образом и т. Д.

* ** 1003 тысяча два * Пример

var obj = {apple: {red: 5, green: 1}, bananas: 9}; //JS object
var str = JSON.stringify(obj, null, 4); // spacing level 4, or instead of 4 you can write "\t" for tabulator

//The third argument from stringify function enables pretty printing and sets the spacing to use.
console.log(str); //now you can see well pretty printed JSON string in console

Но если вы хотите сделать это для себя, тогда вы можете использовать второй параметр как функцию. Подробнее о JSON.stringify функции вы можете найти здесь .

Множество примеров как красиво напечатать строку JSON .

0 голосов
/ 13 сентября 2018

Как упомянуто @Heiko Rupp, это облегчает чтение. Большинство файлов JSON уже предварительно сертифицированы. Если вы хотите предварительно преобразовать свою собственную отформатированную переменную JSON, вы можете сделать это следующим образом:

import json

variable = {'a': 1, 'b': 2, 'c': 3}
print(variable)
# returns:
{'a': 1, 'b': 2, 'c': 3}

# prettify
print(json.dumps(variable, indent=4, sort_keys=True))
# returns:
{
    "a": 1,
    "b": 2,
    "c": 3
}
0 голосов
/ 15 апреля 2011

Вы можете увидеть сайт здесь , который украсит вставленный JSON ...

Это просто делает его более читабельным, в основном для целей отладки, которые я себе представляю.

...