كيفية تحليل JSON بشكل صحيح في JavaScript؟ نناقش JSON.parse ومعالجة الأخطاء
الترجمة من الروسية إلى العربية:
مرحبًا بالجميع! أنا مبتدئ في JavaScript وأكتب تطبيقًا صغيرًا يحصل على بيانات من الخادم بتنسيق JSON. يقوم الخادم بإرجاع سلسلة نصية، على سبيل المثال: `'{"name": "John", "age": 30}'`. أحاول تحويلها إلى كائن للعمل مع الحقول.
المشكلة هي أن الأمور تعمل أحيانًا، لكن في أحيان أخرى يتعطل الكود مع خطأ. أستخدم `JSON.parse()`، ولكن عندما يُرجع الخادم شيئًا غير متوقع (مثل سلسلة فارغة أو JSON غير صالح)، يتعطل التطبيق ببساطة. إليك الكود الحالي الخاص بي:
```javascript
const response = '{"name": "John", "age": 30}';
const data = JSON.parse(response);
console.log(data.name); // يطبع "John"
```
لكن إذا كانت response هكذا: `"not valid json"`، فسأحصل على `Uncaught SyntaxError: Unexpected token`. كيف يمكنني التعامل مع مثل هذه المواقف بشكل صحيح؟ هل يجب التحقق من البيانات قبل التحليل؟ وهل هناك فرق بين `JSON.parse()` والطرق الأخرى مثل `eval()`؟ لقد سمعت أن `eval()` خطير، لكن لماذا؟
سأكون ممتنًا لشرح مفصل مع أمثلة.