تخطَّ إلى المحتوى
ARAB CODEمجتمع المطورين العرب

سجل التعديلات

العودة إلى المقال

الفرق مقارنةً بالنسخة السابقة

+ **JavaScript** لغة برمجة ديناميكية تعمل في كل المتصفحات، وعلى الخادم عبر بيئات مثل Node.js.
+ ## المتغيرات والأنواع
+
+ ```js
+ const name = 'سارة'; // لا يُعاد إسناده
+ let count = 0; // قابل لإعادة الإسناد
+ const user = { name, langs: ['js', 'py'] };
+ ```
+
+ استخدم `const` افتراضياً و`let` عند الحاجة، وتجنب `var`. الأنواع الأولية: string وnumber وbigint وboolean وundefined وnull وsymbol؛ وكل ما عداها كائنات.
+
+ ## المقارنة
+
+ استخدم `===` دائماً: `0 == ''` تعطي `true` بسبب تحويل الأنواع، بينما `0 === ''` تعطي `false`.
+
+ ## الدوال
+
+ ```js
+ const add = (a, b) => a + b;
+ function greet(name = 'صديقي') { return `مرحباً ${name}`; }
+ ```
+
+ ## البرمجة غير المتزامنة
+
+ العمليات البطيئة (الشبكة، الملفات) تعيد **وعداً** (Promise):
+
+ ```js
+ async function loadUser(id) {
+ const res = await fetch(`/api/users/${id}`);
+ if (!res.ok) throw new Error(`HTTP ${res.status}`);
+ return res.json();
+ }
+ ```
+
+ `await` توقف الدالة دون حجب الصفحة. استخدم `Promise.all` لتشغيل طلبات مستقلة معاً بدل انتظارها واحداً تلو الآخر.
+
+ ## أخطاء شائعة
+
+ - نسيان `await` فتصبح القيمة وعداً لا نتيجة.
+ - عدم التحقق من `res.ok` (fetch لا يرمي خطأ عند 404 أو 500).
+ - مقارنة الأعداد العشرية مباشرة: `0.1 + 0.2 !== 0.3`.
  1. معتمدالنسخة الحاليةفريق عرب كودرسمي

    مقال مرجعي رسمي من فريق عرب كود

    ملاحظة المراجعة: Approved for publication: site owner written instruction 2026-10-24 (final completion directive: populate the wiki via the official editorial identity)