Menu

JSON Formatter

לעצב, לאמת ולחקור JSON עם תצוגת עץ חיה.

מאת Nethanel Bar, Co-founder & CEO

עודכן לאחרונה

מוכנים ללמוד תכנות באמת?

ב-Coddy לומדים דרך כתיבת קוד אמיתי בדפדפן: שיעורים אינטראקטיביים, משוב מיידי ועזרה מ-AI כשנתקעים.

מה זה JSON formatter?

JSON formatter (נקרא גם JSON beautifier או pretty-printer) לוקח JSON דחוס או מבולגן והופך אותו לנתונים קריאים עם הזחות. זה אחד מכלי הפיתוח שהכי הרבה משתמשים בהם: לבדיקת תגובות API, לקריאת קובצי הגדרות, לניפוי באגים בלוגים, להשוואת נתוני בדיקה ולהעברת נתונים בין קוד frontend לקוד backend.

JSON הוא פורמט קפדני: מפתחות חייבים להיות במירכאות כפולות, מחרוזות חייבות להיות במירכאות כפולות, פסיקים חייבים להיות במקום הנכון, וכל { או [ שנפתח חייב להיסגר. Formatter הופך את המבנה הזה לגלוי, ו-validator מובנה אומר לכם בדיוק איפה התחביר נשבר, אם הוא נשבר.

JSON הוא ראשי תיבות של JavaScript Object Notation. למרות שהוא צמח מתוך JavaScript, כמעט לכל שפת תכנות יש תמיכה מובנית בקריאה וכתיבה של JSON, ולכן הוא הפך לדרך ברירת המחדל להעברת נתונים מובנים ברשת.

מה תלמדו תוך כדי שימוש

  • אובייקטים משתמשים ב-{} לשדות עם שם, מערכים משתמשים ב-[] לרשימות מסודרות, ואפשר לקנן אותם זה בתוך זה לכל עומק.
  • JSON מעוצב ו-JSON מכווץ הם *אותם נתונים*: רווחים משנים את הקריאות, לא את המשמעות. שרתים בדרך כלל מחזירים JSON מכווץ כדי לחסוך בתים.
  • ערכי JSON מוגבלים לשישה סוגים: מחרוזת, מספר, בוליאני, null, אובייקט ומערך. אין undefined, אין פונקציות ואין הערות.
  • שגיאות ולידציה בדרך כלל מצביעות ליד הבעיה, אבל הטעות האמיתית (סוגר שלא נסגר, מירכאה חסרה) יכולה להיות כמה תווים קודם.

איך לעצב JSON שלב אחר שלב

  1. הדביקו את ה-JSON בתיבת הקלט

    העתיקו את ה-JSON מתגובת ה-API, מקובץ הלוג או מקובץ ההגדרות והדביקו אותו בתיבת הקלט. ה-formatter מקבל גם קלט מכווץ וגם קלט שמעוצב חלקית.

  2. בחרו את רוחב ההזחה

    שני רווחים הם הסגנון הנפוץ ביותר, וארבעה רווחים נפוצים גם כן. בחרו את מה שמתאים לסגנון הקיים בפרויקט שלכם.

  3. קראו את תוצאת הבדיקה

    אם ה-JSON תקין, הפלט המעוצב מופיע בחלונית הפלט. אם לא, הודעת השגיאה אומרת לכם את השורה והתו שבהם הפענוח נכשל.

  4. חקרו את תצוגת העץ

    השתמשו בעץ המתקפל כדי לקפל אובייקטים ומערכים מקוננים לעומק. זו הדרך המהירה ביותר להבין את המבנה של תגובת API לא מוכרת.

  5. העתיקו או כווצו את התוצאה

    העתיקו את הגרסה המעוצבת לקוד או לתיעוד שלכם, או כווצו אותה בחזרה לשורה אחת לאחסון ולהעברה ברשת.

מדריך מהיר לתחביר JSON

כל אבני הבניין של JSON. כל מה שלא ברשימה הזו הוא לא JSON תקין. המפרט: RFC 8259 ו-ECMA-404.

Tokenמשמעותדוגמה
{ }אובייקט: אוסף של זוגות מפתח/ערך{"name": "Maya"}
[ ]מערך: רשימה מסודרת של ערכים[1, 2, 3]
"..."מחרוזת: תמיד עטופה במירכאות כפולות"hello"
מספרשלם או עשרוני, בלי מירכאות, בלי + בהתחלה42, -3.14
true / falseערכים בוליאניים, באותיות קטנותtrue
nullערך ריק / חסרnull
:מפריד בין מפתח לערך שלו"id": 7
,מפריד בין פריטים, אף פעם לא בסוף[1, 2, 3]

דוגמאות JSON לנסות

עיצוב תגובת API טיפוסית

קלט
{"user":{"id":7,"name":"Maya"},"skills":["HTML","JavaScript"]}
מעוצב
{  "user": {    "id": 7,    "name": "Maya"  },  "skills": ["HTML", "JavaScript"]}

אחרי העיצוב, האובייקט המקונן user והמערך skills הרבה יותר קלים לסריקה. הנתונים זהים, רק הרווחים משתנים.

תפיסת פסיק מיותר בסוף

לא תקין
{  "name": "Coddy",  "active": true,}

JSON לא מאפשר פסיק אחרי המאפיין האחרון. ה-validator יסמן את ה-} הסוגר. זו אחת הטעויות הנפוצות ביותר כשמעתיקים תחביר של אובייקט JavaScript ל-JSON.

השוואת סוגי ערכים

קלט
{  "count": 3,  "countText": "3",  "enabled": true}

3 הוא מספר, "3" הוא מחרוזת ו-true הוא בוליאני: שלושה סוגי JSON שונים. API נכשלים הרבה פעמים כשהמבנה נכון אבל סוג של ערך שגוי.

קריאת תגובה מקוננת לעומק

קלט
{  "data": {    "orders": [      { "id": 101, "items": [{ "sku": "A", "qty": 2 }] },      { "id": 102, "items": [] }    ]  }}

השתמשו בתצוגת העץ כדי לקפל את data.orders ולחשוף את המבנה רמה אחרי רמה. מערכים מקוננים של אובייקטים הם הדפוס הנפוץ ביותר בתגובות REST.

טעויות JSON נפוצות

  • להשתמש במירכאות בודדות במקום כפולות סביב מפתחות או מחרוזות: JSON מאפשר רק מירכאות כפולות.
  • להתייחס ל-JSON כמו לאובייקט JavaScript: הערות, פונקציות ו-undefined לא תקינים ב-JSON, ופסיקים בסוף ייכשלו בפענוח.
  • לשכוח שמספרים ב-JSON לא יכולים להתחיל ב-+, לא יכולים להתחיל באפסים (חוץ מ-0 עצמו), ולא יכולים להיות עטופים במירכאות אם אתם באמת רוצים סוג מספר.
  • להדביק טוקנים, נתוני לקוחות או סודות של סביבת production בכלים שמעלים את הקלט שלכם. ה-formatter של Coddy רץ מקומית ולכן זה בטוח, אבל תמיד בדקו לפני שאתם משתמשים באתר של צד שלישי.

שאלות נפוצות על JSON Formatter

מה זה JSON?
JSON (JavaScript Object Notation) הוא פורמט טקסט קל לנתונים מובנים. הוא משתמש בזוגות מפתח-ערך ובמערכים ונתמך כמעט בכל שפת תכנות, ולכן הוא ברירת המחדל ל-API ברשת, לקובצי הגדרות ולמטעני הודעות.
איך מעצבים JSON?
הדביקו את ה-JSON ב-JSON formatter, בחרו רוחב הזחה (בדרך כלל 2 רווחים), והכלי מוציא את אותם נתונים מחדש עם ירידות שורה והזחות. רוב ה-formatters גם בודקים את התחביר באותו שלב.
מה ההבדל בין JSON formatter ל-JSON validator?
Formatter משנה JSON תקין לפריסה קריאה יותר. Validator בודק מלכתחילה אם התחביר של ה-JSON תקין. כלי JSON טוב עושה את שניהם.
האם עיצוב JSON משנה את הנתונים?
לא. עיצוב מוסיף הזחות וירידות שורה, אבל המפתחות, המערכים, המחרוזות, המספרים, הערכים הבוליאניים וערכי null נשארים בדיוק אותו דבר. כיווץ בחזרה ישחזר את הצורה המקורית שנוחה להעברה ברשת.
למה ה-JSON שלי נכשל אם הוא נראה כמו אובייקט JavaScript?
JSON קפדני יותר מתחביר של אובייקט JavaScript. מפתחות ומחרוזות חייבים להשתמש במירכאות כפולות, JSON לא יכול להכיל הערות, ופסיקים בסוף, מירכאות בודדות ו-undefined אסורים.
איפה מפתחים משתמשים ב-JSON כל יום?
JSON נמצא בכל מקום: תגובות REST ו-GraphQL, גופי בקשות, קובצי הגדרות (package.json, tsconfig.json), מטא-דאטה של חבילות, שורות לוג, local storage של הדפדפן ונתוני בדיקה.

למידע נוסף

כלי פיתוח נוספים

איור של שפות התכנות ב-Coddy

ללמוד תכנות עם Coddy

להתחיל