Форматуйте та покращуйте ваші дані JSON з правильними відступами. Робить сирий JSON читабельним з підсвічуванням синтаксису та валідацією.
Форматуйте та покращуйте свій JSON за допомогою цього простого інструменту
Форматований JSON з'явиться тут...
JSON (JavaScript Object Notation) — це легкий формат обміну даними, який став стандартом для обміну даними в веб-додатках. Незважаючи на свою простоту, дані JSON можуть стати важкими для читання, коли вони зменшені або не мають належного форматування. Цей інструмент допомагає вам перетворити сирі, неформатовані рядки JSON у добре структурований, відформатований вигляд, який значно легше читати та аналізувати.
Форматування JSON (також відоме як "красиве друкування") додає послідовний відступ, розриви рядків і пробіли, щоб візуально представити ієрархічну структуру даних JSON. Це особливо цінно при роботі зі складними вкладеними об'єктами або великими наборами даних, де зв'язки між елементами інакше можуть бути важко розпізнати.
Наш інструмент форматування JSON надає простий інтерфейс для покращення вашого JSON-даних з належним відступом і структурою, роблячи його більш читабельним для людей, зберігаючи його дійсність для машин.
JSON побудований на двох основних структурах:
{}
. Кожне ім'я супроводжується двокрапкою :
і пари відокремлюються комами ,
.1 {"name": "John", "age": 30, "city": "New York"}
2
[]
. Значення відокремлюються комами ,
.1 ["apple", "banana", "cherry"]
2
Значення JSON можуть бути:
"Hello World"
42
або 3.14159
true
або false
null
{"key": "value"}
[1, 2, 3]
Правильний JSON повинен дотримуватися цих синтаксичних правил:
Загальні синтаксичні помилки включають:
Форматування JSON перетворює компактний, зменшений JSON у більш читабельну форму шляхом:
Парсинг: Рядок JSON спочатку розбирається, щоб забезпечити його дійсність і створити представлення даних у пам'яті.
Відступ: Кожен вкладений рівень об'єктів і масивів відступає (зазвичай на 2 або 4 пробіли), щоб візуально представити ієрархію.
Розриви рядків: Нові рядки додаються після кожної властивості або елемента масиву для покращення читабельності.
Пробіли: Додаються послідовні пробіли навколо двокрапок і ком.
Наприклад, цей зменшений JSON:
1{"name":"John Doe","age":30,"address":{"street":"123 Main St","city":"Anytown","state":"CA"},"hobbies":["reading","hiking","photography"]}
2
Стає таким відформатованим JSON:
1{
2 "name": "John Doe",
3 "age": 30,
4 "address": {
5 "street": "123 Main St",
6 "city": "Anytown",
7 "state": "CA"
8 },
9 "hobbies": [
10 "reading",
11 "hiking",
12 "photography"
13 ]
14}
15
Наш форматер використовує стандартний відступ у 2 пробіли на рівень, що є загальноприйнятою конвенцією в розробницькому співтоваристві та забезпечує гарний баланс між компактністю та читабельністю.
Критичним аспектом форматування JSON є валідація. Перш ніж JSON можна відформатувати, він повинен бути синтаксично дійсним відповідно до специфікації JSON. Загальні помилки валідації включають:
Синтаксичні помилки:
Помилки типу даних:
undefined
або NaN
Коли ви стикаєтеся з недійсним JSON, повідомлення про помилку може допомогти виявити проблему. Більшість парсерів JSON вкажуть позицію, де парсинг зазнав невдачі, що може допомогти виявити проблему. Наш інструмент надає чіткі повідомлення про помилки, щоб допомогти вам виявити та виправити проблеми у ваших даних JSON.
Форматування JSON є цінним у багатьох ситуаціях:
При роботі з RESTful API відформатований JSON полегшує:
Багато сучасних додатків використовують JSON для конфігурації:
Відформатований JSON допомагає, коли:
Правильно відформатований JSON є важливим, коли:
Чітке форматування JSON є цінним для:
Хоча наш веб-інструмент форматування JSON зручний для швидких завдань форматування, існує кілька альтернатив для різних сценаріїв:
Сучасні браузери включають можливості форматування JSON:
Більшість середовищ розробки пропонують форматування JSON:
Для користувачів терміналу або автоматизації:
jq
— це потужний процесор JSON командного рядкаjson_pp
постачається попередньо встановленим на багатьох системах Unixpython -m json.tool
забезпечує швидке форматування за допомогою PythonКоли потрібно форматувати JSON у додатках:
1// JavaScript
2const formatted = JSON.stringify(jsonObject, null, 2);
3
1# Python
2import json
3formatted = json.dumps(json_object, indent=2)
4
1// Java з Gson
2Gson gson = new GsonBuilder().setPrettyPrinting().create();
3String formatted = gson.toJson(jsonObject);
4
1# Ruby
2require 'json'
3formatted = JSON.pretty_generate(json_object)
4
1// PHP
2$formatted = json_encode($jsonObject, JSON_PRETTY_PRINT);
3
JSON був створений Дугласом Крокфордом на початку 2000-х років як легка альтернатива XML. Формат був похідним від синтаксису об'єктних літералів JavaScript, але розроблений для незалежності від мови. У 2006 році JSON був формально специфікований у RFC 4627, і він швидко набрав популярності завдяки своїй простоті та сумісності з JavaScript.
Перед JSON XML був домінуючим форматом для обміну даними, але його громіздкість і складність робили його незручним для багатьох застосувань. JSON запропонував більш стиснутий синтаксис, який був легшим для читання та написання як для людей, так і для машин. Він також ідеально відповідав об'єктній моделі JavaScript, що робило його природним вибором для веб-додатків.
Прийняття JSON прискорилося з підйомом AJAX та RESTful API в середині 2000-х років. До 2010-х років він став стандартом для веб-API, файлів конфігурації та зберігання даних у NoSQL базах даних, таких як MongoDB та CouchDB.
Сьогодні JSON підтримується практично кожною мовою програмування та використовується в безлічі застосувань в Інтернеті. Його простота, гнучкість та універсальна підтримка зробили його одним з найважливіших форматів даних у сучасних обчисленнях.
Ось приклади того, як форматувати JSON на різних мовах програмування:
1// Форматування JSON на JavaScript
2function formatJSON(jsonString) {
3 try {
4 const parsedData = JSON.parse(jsonString);
5 return JSON.stringify(parsedData, null, 2);
6 } catch (error) {
7 return `Помилка: ${error.message}`;
8 }
9}
10
11// Приклад використання
12const rawJSON = '{"name":"John","age":30,"city":"New York"}';
13console.log(formatJSON(rawJSON));
14
1# Форматування JSON на Python
2import json
3
4def format_json(json_string):
5 try:
6 parsed_data = json.loads(json_string)
7 return json.dumps(parsed_data, indent=2)
8 except json.JSONDecodeError as e:
9 return f"Помилка: {str(e)}"
10
11# Приклад використання
12raw_json = '{"name":"John","age":30,"city":"New York"}'
13print(format_json(raw_json))
14
1// Форматування JSON на Java з Gson
2import com.google.gson.Gson;
3import com.google.gson.GsonBuilder;
4import com.google.gson.JsonSyntaxException;
5
6public class JSONFormatter {
7 public static String formatJSON(String jsonString) {
8 try {
9 Gson gson = new GsonBuilder().setPrettyPrinting().create();
10 Object parsedJson = gson.fromJson(jsonString, Object.class);
11 return gson.toJson(parsedJson);
12 } catch (JsonSyntaxException e) {
13 return "Помилка: " + e.getMessage();
14 }
15 }
16
17 public static void main(String[] args) {
18 String rawJSON = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
19 System.out.println(formatJSON(rawJSON));
20 }
21}
22
1// Форматування JSON на PHP
2function formatJSON($jsonString) {
3 $result = json_decode($jsonString);
4 if (json_last_error() !== JSON_ERROR_NONE) {
5 return "Помилка: " . json_last_error_msg();
6 }
7 return json_encode($result, JSON_PRETTY_PRINT);
8}
9
10// Приклад використання
11$rawJSON = '{"name":"John","age":30,"city":"New York"}';
12echo formatJSON($rawJSON);
13
1# Форматування JSON на Ruby
2require 'json'
3
4def format_json(json_string)
5 begin
6 parsed_data = JSON.parse(json_string)
7 return JSON.pretty_generate(parsed_data)
8 rescue JSON::ParserError => e
9 return "Помилка: #{e.message}"
10 end
11end
12
13# Приклад використання
14raw_json = '{"name":"John","age":30,"city":"New York"}'
15puts format_json(raw_json)
16
1// Форматування JSON на C# з Newtonsoft.Json
2using Newtonsoft.Json;
3using System;
4
5class JSONFormatter
6{
7 public static string FormatJSON(string jsonString)
8 {
9 try
10 {
11 object parsedJson = JsonConvert.DeserializeObject(jsonString);
12 return JsonConvert.SerializeObject(parsedJson, Formatting.Indented);
13 }
14 catch (JsonException e)
15 {
16 return $"Помилка: {e.Message}";
17 }
18 }
19
20 static void Main()
21 {
22 string rawJSON = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
23 Console.WriteLine(FormatJSON(rawJSON));
24 }
25}
26
1// Форматування JSON на Go
2package main
3
4import (
5 "encoding/json"
6 "fmt"
7)
8
9func formatJSON(jsonString string) string {
10 var parsedData interface{}
11 err := json.Unmarshal([]byte(jsonString), &parsedData)
12 if err != nil {
13 return fmt.Sprintf("Помилка: %s", err.Error())
14 }
15
16 formattedBytes, err := json.MarshalIndent(parsedData, "", " ")
17 if err != nil {
18 return fmt.Sprintf("Помилка: %s", err.Error())
19 }
20
21 return string(formattedBytes)
22}
23
24func main() {
25 rawJSON := `{"name":"John","age":30,"city":"New York"}`
26 fmt.Println(formatJSON(rawJSON))
27}
28
Коли ви працюєте з форматуванням JSON, будьте уважні до цих потенційних викликів:
Дуже великі файли JSON (декілька мегабайт або більше) можуть викликати проблеми з продуктивністю в браузерних форматерах. Для таких випадків:
jq
Надзвичайно вкладений JSON (більше 10-20 рівнів) може стати важким для навігації, навіть якщо його відформатувати. У таких випадках:
JSON підтримує Юнікод, але деякі форматери можуть мати проблеми з певними символами:
JSON не вказує точність для чисел, що може призвести до проблем з дуже великими цілими числами або значеннями з плаваючою комою:
Дійсний JSON включає порожні об'єкти {}
і масиви []
, які повинні бути належним чином відформатовані:
{}
[]
Відкрийте більше інструментів, які можуть бути корисними для вашого робочого процесу