SyntaxError: JSON.parse unexpected characterSyntaxError: JSON.parse حرف غير متوقع
واجه JSON.parse() صيغة JSON غير صالحة، مثل علامات اقتباس مفردة، أو فواصل زائدة، أو مفاتيح غير مقتبسة.
أسباب هذا الخطأ
السلسلة النصية الممررة إلى JSON.parse() ليست JSON صالحة. تشمل المشكلات الشائعة: استخدام علامات اقتباس مفردة بدلاً من المزدوجة، وفواصل زائدة، وتعليقات داخل JSON، وأسماء خصائص غير مقتبسة، أو أن السلسلة تحتوي على HTML/XML بدلاً من JSON.
كيفية الإصلاح
تحقق من صحة سلسلة JSON باستخدام أداة تحقق من JSON. تأكد من أن جميع السلاسل تستخدم علامات اقتباس مزدوجة، وأزِل الفواصل الزائدة والتعليقات. سجِّل السلسلة الخام قبل التحليل لترى ما الذي تحاول تحليله فعلاً.
مثال
JSON.parse("{'key': 'value'}"); // SyntaxError: single quotes invalid in JSONرموز أخطاء ذات صلة
ERR_CRYPTO_INVALID_STATEERR_CRYPTO_INVALID_STATE
تم تنفيذ عملية تشفير في حالة غير صالحة.
ERR_FS_CP_DIR_TO_NON_DIRERR_FS_CP_DIR_TO_NON_DIR
جُرِّبت نسخ مجلد إلى وجهة ليست مجلداً.
ERR_INVALID_RETURN_VALUEERR_INVALID_RETURN_VALUE
أعادت دالة قيمة ذات نوع غير متوقع.
ReferenceError: x is not definedReferenceError: x غير معرّف
أشار الكود إلى متغير لم يُصرَّح عنه في أي نطاق يمكن الوصول إليه.
ERR_NETWORK_IMPORT_DISALLOWEDERR_NETWORK_IMPORT_DISALLOWED
جرت محاولة استيراد شبكي (HTTP/HTTPS) لكنه غير مسموح به وفق إعداد Node.js الحالي.
RangeError: Invalid array lengthRangeError: طول المصفوفة غير صالح
أُنشئت مصفوفة بطول غير صالح، كرقم سالب أو غير صحيح.