JSON فارمیٹر اور ویور
JSON چسپائیں اور یہ وہیں پر خوبصورت ہو جائے گا۔ کسی بھی فیلڈ پر کلک کر کے دائیں طرف اس کا پورا ویلیو اور پاتھ جانچیں؛ نحو کی غلطیوں کا پتہ لائن اور کالم کے حساب سے چلتا ہے۔ ہر چیز آپ کے براؤزر میں مقامی طور پر چلتی ہے۔
- انڈینٹیشن
- 2 / 4 اسپیس · ٹیب
- اضافی خصوصیات
- جانچ · ترتیب · اعدادوشمار
- رازداری
- کچھ بھی اپ لوڈ نہیں ہوتا
- استعمال
- مفت · سائن اپ کی ضرورت نہیں
یہ کیوں اہمیت رکھتا ہے
جو لوگ روزانہ JSON پڑھتے ہیں ان کے لیے بنایا گیا
API ریسپانسز، کنفگر فائلیں، لاڈ پے لوڈز — خام JSON ایک گھنی لائن کے طور پر آتا ہے۔ اسے پڑھنے کے قابل بنائیں، ٹوٹے ہوئے کوما کو تلاش کریں، پھر اسے اپنی ضرورت کے مطابق ترتیب دیں۔
بیوٹیفائی اینڈ مِنِفائی
ایک کلک سے انسانوں کے پڑھنے کے قابل ٹری اور کمپیکٹ سنگل لائن کے درمیان سوئچ کریں۔ اپنے کوڈ بیس کے انداز سے ملنے کے لیے 2 اسپیسز، 4 اسپیسز یا ایک ٹیب منتخب کریں۔
لائن اور کالم کے لحاظ سے غلطیوں کا پتہ
غلط JSON خفیہ پرسر میسج کے بجائے درست پوزیشن — L12 : C34 — کی رپورٹ کرتا ہے، لہذا آپ براہ راست غائب کوما یا آخر کا اقتباس تک پہنچ جاتے ہیں۔
ریکرسیو کییز ترتیب
ہر گہرائی پر آبجیکٹ کییز کو حروف تہجی کے لحاظ سے ترتیب دیں جبکہ arrays اپنا آرڈر برقرار رکھتے ہیں۔ کنفگرز کے موازنہ اور کمٹس میں فکسچر کو مستحکم کرنے کے لیے مثالی۔
ایسکیپ / ان ایسکیپ لیٹرلز
JSON کو کوڈ یا env فائلوں میں شامل کرنے کے لیے ایسکیپ شدہ سٹرنگ لیٹرل میں تبدیل کریں، اور انسپکشن کے لیے اقتباس شدہ لیٹرل کو خام JSON میں کھولیں۔
کسی بھی فیلڈ پر کلک کر کے اسے پوری طرح دیکھیں
ایڈیٹر میں کسی فیلڈ پر کلک کریں اور ایک سائیڈ پینل کھل جائے گا جس میں اس کی مکمل ویلیو، قسم اور JSON پاتھ شامل ہوگا — یہاں تک کہ گھوںسلی آبجیکٹس اور ایئیز بھی شامل ہیں، لہذا آپ کو کبھی بھی آنکھ سے بریکٹ شمار کرنے کی ضرورت نہیں ہوگی۔
مکمل طور پر مقامی طور پر چلتا ہے
JSON کبھی بھی آپ کے براؤزر سے باہر نہیں جاتا، یہ ٹول آف لائن کام کرتا ہے، اور جب ان پٹ خالی ہوتا ہے تو کوئی درخواست نہیں کی جاتی ہے۔
یہ کیسے کام کرتا ہے
انڈینٹیشن کو 2 اسپیس، 4 اسپیس اور ٹیب کے درمیان تبدیل کریں۔ مشین کو بھیجنے کے لیے ایک لائن پر مائنیفائی کریں، جب آپ کو مستحکم ترتیب کی ضرورت ہو تو آبجیکٹ کیز کو تکراری طور پر ترتیب دیں، یا پورے پے لوڈ کو سٹرنگ لیٹرل میں تبدیل کریں — اور کسی لاگ لائن سے کاپی کی گئی کوٹڈ لیٹرل کو دوبارہ تبدیل کریں۔
اپنی انڈینٹیشن کو 2 اسپیس، 4 اسپیس اور ٹیب کے درمیان تبدیل کریں۔ مشین کو بھیجنے کے لیے ایک لائن پر مائنیفائی کریں، جب آپ کو مستحکم ترتیب کی ضرورت ہو تو آبجیکٹ کیز کو تکراری طور پر ترتیب دیں، یا پورے پے لوڈ کو سٹرنگ لیٹرل میں تبدیل کریں — اور کسی لاگ لائن سے کاپی کی گئی کوٹڈ لیٹرل کو دوبارہ تبدیل کریں۔
مزید JSON ٹولز
مقصد کے لحاظ سے تیار کردہ تیسری پارٹی کے ٹولز — ہم یہاں ان کی نقل نہیں بناتے، اس لیے جب آپ کو ضرورت پڑے تو یہاں جائیں۔
| ٹول | مقصد | یہ کیا کرتا ہے |
|---|---|---|
| JSON Editor Online | ترمیم اور توثیق | منسلک ٹیکسٹ اور ٹری پینز، ڈریگ اینڈ ڈراپ کی ری اسٹرکچرنگ، نیز ڈِف، اسکیما توثیق اور استفسار۔ |
| JSON Crack | تجسم بندی | JSON کو انٹرایکٹو نوڈ گراف میں تبدیل کرتا ہے تاکہ گہری Nesting کو سمجھا جا سکے یا فوری ڈیمو بنایا جا سکے۔ |
| JSON Visio | تجسم بندی | ایک ہلکا UI والا دوسرا گراف ویور — دونوں میں سے وہ منتخب کریں جو آپ کو زیادہ قدرتی لگے۔ |
| Diffchecker | موازنہ | دو متنوں کو برابر کے پاس یا متحد منظر میں موازنہ کریں اور براہ راست داخل کردہ، حذف کردہ یا تبدیل کردہ لائنوں پر جائیں۔ |
| JSONPath | سوال | JSONPath تاثرات کو آن لائن چلائیں اور راستے سے بالکل وہی فیلڈز نکالیں جو آپ کو درکار ہیں۔ |
| JSONata | سوال اور تبدیلی | JSON کے لیے ایک سوال اور تبدیلی کی زبان، جس میں آن لائن پلے گراؤنڈ اور مثالیں ہیں۔ |
| quicktype | ٹائپ جنریشن | JSON سے TypeScript, Swift, Go اور دیگر ٹائپ کی تعریفیں تیار کریں۔ |
| JSON Generator | موک ڈیٹا | ٹیمپلیٹس سے ساختہ موک ڈیٹا تیار کریں – API ٹیسٹ فکسچرز کے لیے مفید۔ |
JSON فارمیٹنگ کی باریک تفصیلات
JSON سادہ لگتا ہے لیکن اس کے سخت قوانین ہوتے ہیں — ان کو جاننا ہر بار ایک راؤنڈ ٹرپ بچاتا ہے جب ایک پارسر آپ کا پے لوڈ مسترد کرتا ہے۔
درست JSON کیا شمار ہوتا ہے؟
JSON چھ ویلیو کی قسمیں متعین کرتا ہے: آبجیکٹ، ایئے، سٹرنگ، نمبر، بولین اور نل۔ کیز کو ڈبل کوٹڈ سٹرنگ ہونا چاہیے، اس میں کوئی ٹریلنگ کوما نہیں ہوتا، اور تبصرے کی اجازت نہیں ہوتی ہیں۔
جیواسکرپٹ کے اضافی چیزیں جیسے سنگل کوٹ، انڈیفائنڈ، NaN، انفنٹی اور ٹریلنگ کوما سب سخت پارسر میں ناکام ہو جاتی ہیں — یہی وہ چیز ہے جس کو یہ ٹول فلگ کرتا ہے۔
فارمیٹنگ سے دیکھنے کس طرح مختلف ہے؟
فارمیٹنگ متن کے لے آؤٹ کو بدلتی ہے: انڈینٹیشن، لائن بریک اور مائنیفیکیشن۔ دیکھنے دستاویز کو برقرار رکھتا ہے — جب آپ کسی فیلڈ پر کلک کرتے ہیں، اس کی مکمل ویلیو، قسم اور JSON پاتھ ایک سائیڈ پینل میں ظاہر ہوتا ہے۔
گہری گھوںسلی آبجیکٹ صرف بریکٹ سے پڑھنا مشکل ہوتے ہیں، لہذا کسی فیلڈ پر کلک کرنا آپ کو قطعی طور پر یقین دلاتا ہے کہ اس میں کیا ہے — خاص طور پر API رسپانسز اور لاگ پے لوڈز کے ساتھ مددگار ہے۔
فارمیٹنگ کے بعد میری کیز آرڈر کیوں بدل جاتا ہے؟
JSON سپیک آبجیکٹس کو بلا ترتیب کلید-ویلیو جوڑوں کے طور پر سمجھتا ہے، اور تجزیہ کاران (پارسیر) انہیں دوبارہ ترتیب دینے کے لیے آزاد ہیں۔ عملی طور پر V8 (Chrome / Node) اسٹرنگ کلیدز کے لیے داخل ہونے کی ترتیب کو برقرار رکھتا ہے، لیکن عدد نما کلیدز ("1", "42") ہمیشہ عددی طور پر پہلے ترتیب دیتے ہیں۔ "آبجیکٹ کلیدز کو ترتیب دیں" کو فعال کریں اگر آپ مستحکم، حروف تہجی کے مطابق ترتیب چاہتے ہیں جو کسی بھی تجزیہ کار کے ذریعے برقرار رہے — کنفیگز کے موازنہ کے لیے مفید ہے۔
JSON کتنا بڑا عدد رکھ سکتا ہے؟
JSON خود کوئی حد مقرر نہیں کرتا، لیکن JavaScript ہر عدد کو IEEE-754 ڈبل کے طور پر پارس کرتا ہے۔ ±2^53 (تقریباً 9 quadrillion) سے زیادہ عدد درستگی کھو دیتے ہیں — 9007199254740993 9007199254740992 بن جاتا ہے۔ اگر آپ کا پے لوڈ 64-bit IDs یا نینوسیکنڈ میں ٹائم سٹیمپ لے رہا ہے، انہیں اسٹرنگ کے طور پر رکھیں؛ یہ ٹول انہیں خراب نہیں کرے گا، لیکن JS کوڈ میں پیسٹ کرنے سے وہ خراب ہو جائیں گے۔
میں بیوٹیفائی کے بجائے مینیفائی کب کروں؟
کسی ایسی چیز کے لیے بیوٹیفائی کریں جسے انسان پڑھتا ہے: کوڈ ریویو، ڈیبگنگ، دستاویزات۔ کسی ایسی چیز کے لیے مینیفائی کریں جسے مشین منتقل کرتی ہے: API باڈیز، URL پیرامیٹرز، اینوائرمینٹ متغیرات اور .env فائلیں۔ ایک عام API پے لوڈ کو مینیفائی کرنے سے بغیر کسی ساختی تبدیلی کے 15–30% بائٹس کی بچت ہوتی ہے — یہ سب سے سستا کمپریشن ہے۔
بچاؤ (escaping) کا استعمال کس لیے ہوتا ہے؟
بچاؤ JSON کو ایک اسٹرنگ لٹرل کے طور پر لپیٹتا ہے: اقواس " بن جاتی ہیں \" اور نئی لائنیں
بن جاتی ہیں، تاکہ یہ کسی دوسرے JSON ویلیو، شیل کمانڈ، یا ماحولیاتی متغیر میں بغیر خرابی کے رہ سکے۔ Unescape اس کے الٹ کام کرتا ہے۔ اگر آپ نے کبھی کسی لاگ لائن سے پے لوڈ کاپی کیا ہے جو {"a":1} لگ رہا تھا، وہی یہ فارمیٹ ہے — اسے یہاں پیسٹ کریں اور Unescape پر کلک کریں۔
اکثر پوچھے جانے والے سوالات
کیا میرا JSON اپ لوڈ کیا جاتا ہے یا کہیں محفوظ کیا جاتا ہے؟
نہیں۔ سب کچھ آپ کے براؤزر میں JavaScript کے ساتھ چلتا ہے — آپ کے JSON کو کوئی بھی درخواست کہیں نہیں لے جاتی، یہ آف لائن کام کرتا ہے، اور مقامی اسٹوریج میں کچھ نہیں لکھا جاتا، اس لیے صفحہ کو ریفریش کرنے سے ان پٹ صاف ہو جاتا ہے۔
میرے کنفیگ فائل پر فارمیٹنگ کیوں ناکام ہو رہی ہے؟
زیادہ تر امکان یہ ہے کہ یہ سخت JSON نہیں ہے: JSONC / JSON5 تبصرے اور ٹریلنگ کوما کی اجازت دیتے ہیں، YAML انڈینٹیشن پر مبنی ہے، اور .env فائلیں کلید=ویلیو جوڑے ہیں۔ پہلے تبصرے اور ٹریلنگ کوما کو ہٹا دیں، یا اس فارمیٹ کے لیے بنایا گیا تجزیہ کار استعمال کریں۔
کلیدز کو ترتیب دینے سے ارے بھی تبدیل ہوتے ہیں کیا؟
نہیں۔ arrays کی ترتیب اہم ہوتی ہے (پہلا آئٹم، دوسرا آئٹم…)، اس لیے arrays ہمیشہ اپنی جگہ پر رہتے ہیں۔ صرف آبجیکٹز کی کلیدیں — بشمول arrays کے اندر موجود nested آبجیکٹز — الفابیتی ترتیب میں آتی ہیں۔
"Error near L12 : C34" کا کیا مطلب ہے؟
یہ وہ 1 پر مبنی لائن اور کالم ہے جہاں parser کام چھوڑ دیتا ہے: لائن 12، کالم 34۔ اصل غلطی عام طور پر اس جگہ پر یا اس سے بالکل پہلے ہوتی ہے — پچھلی لائن پر گمشدہ کوما، بغیر escape شدہ اقتباس بند، یا بند ہونے والے بریس سے پہلے والا ٹریلنگ کوما۔
کیا کوئی سائز کی حد ہے؟ کیا یہ موبائل پر کام کرتا ہے؟
کوئی سخت حد نہیں ہے — چند میگا بائٹ لاگ آؤٹ پٹ کو فارمیٹ کرنا کام کرتا ہے۔ کم سطح کے آلات پر، بہت بڑے ان پٹز (کرڑوں میگا بائٹ) سست محسوس ہو سکتے ہیں کیونکہ ہر کی اسٹروک پر دوبارہ parsing اور فارمیٹنگ ہوتی ہے۔ لے آؤٹ رسپانسیو ہوتا ہے؛ ایڈیٹر اسکرین کی چوڑائی کے مطابق ڈھل جاتا ہے۔