تحويل كائن JavaScript إلى JSON

تحلل الأداة الكائن كنص دون تنفيذه، لذلك تستطيع لصق كود من أي مصدر بأمان.

جارٍ تحميل الأداة…

المعالجة والخصوصية: تُحسب النتيجة داخل متصفحك ولا تُرسل بياناتك إلى أي خادم.

طريقة الاستخدام

  1. أدخل كائن JavaScript والمسافة البادئة.
  2. تظهر النتيجة فورًا وتتحدّث مع كل تعديل.
  3. انسخ النتيجة، أو انسخ رابطًا يحفظ القيم نفسها لمشاركتها.

طريقة الحساب

المفاتيح بلا علامات تصبح نصوصا، والمفاتيح الرقمية تكتب كما يحولها JavaScript فيصبح 0x10 المفتاح "16"، والنصوص المفردة وقوالب ` بلا تعويض تصبح نصوص JSON. الأرقام السداسية والثنائية والثمانية تحول إلى أرقام عشرية، والتعليقات والفواصل الزائدة تحذف.

مثال

المدخلات: المسافة البادئة = مسافتان. النتيجة: ناتج JSON: { "name": "Ali", "age": 30, "tags": [ "js", "json" ], "active": true }، عدد القيم المنقولة: 5.

const user = {
  name: 'Ali',
  age: 30,
  tags: ['js', "json"],
  // trailing commas and comments are fine
  active: true,
};
{
  "name": "Ali",
  "age": 30,
  "tags": [
    "js",
    "json"
  ],
  "active": true
}

الحدود والملاحظات

  • القيم undefined و NaN و Infinity والدوال والمتغيرات ليس لها مقابل في JSON فتظهر رسالة خطأ.
  • المفاتيح المحسوبة [key] والخصائص المختصرة وصيغة النشر غير مدعومة.

أسئلة شائعة عن هذه الأداة

لماذا لا أستخدم eval أو JSON.parse؟

JSON.parse يرفض المفاتيح بلا علامات، و eval ينفذ الكود وقد يكون خطرا. هنا يحلل الكائن كنص فقط.

هل تقبل الأداة const data = { };؟

نعم، تتجاهل const و let و var و export default و module.exports والفاصلة المنقوطة في النهاية.

ماذا يحدث للمفاتيح المكررة؟

تفوز آخر قيمة ويبقى المفتاح في موضعه الأول، كما في JavaScript.