LIBRARY // Error Library
Filter by language & difficulty — color is information: Easy · Medium · Hard
دمج مدخل المستخدم مباشرة في استعلام SQL يفتح ثغرة حقن، حتى لو الكود يعمل ظاهرياً فهو غير آمن.
strlen يحسب البايتات لا الحروف، فالنص العربي "مرحبا" طوله 5 حروف لكن strlen يعطي 10 بايت، فيكسر منطق التحقق من الطول.
العامل == يحول الأنواع تلقائياً فيعتبر "5" == 5 صحيحة بينما === يقارن القيمة والنوع معاً. هذا يسبب منطق خاطئ عند التحقق من مدخلات المستخدم.
بدون break يستمر التنفيذ للحالة التالية (fall-through) فيُنفذ أكثر من كتلة دون قصد، فيُعطي نتيجة خاطئة.
كتابة اسم الدالة بدون () ترجع مرجع الدالة لا نتيجتها، فيُطبع كود الدالة أو يُمرر كائن دالة بدل القيمة المتوقعة.
في JS قيمة NaN لا تساوي نفسها (NaN === NaN تعطي false). المقارنة المباشرة تفشل دائماً ويجب استخدام isNaN أو Number.isNaN.
السهم بدون أقواس يرجع تلقائياً، لكن مع {} يجب كتابة return صراحة وإلا ترجع undefined.
typeof [] يعطي "object" وليس "array"، فالتحقق به يفشل. يجب استخدام Array.isArray.
خصائص الكائن تفصل بفاصلة، نسيانها يسبب SyntaxError: Unexpected identifier.
قراءة خاصية من قيمة null أو undefined تطلق TypeError: Cannot read properties of undefined. يحدث عند عدم التحقق من وجود الكائن.
استدعاء دالة async بدون await يرجع Promise لا القيمة، فالمتغير يحوي كائن Promise ويُستخدم كقيمة فيُعطي [object Promise].
داخل setTimeout الدالة العادية تفقد this فيشير لـ window بدل الكائن، فيُرجع undefined.
Showing 49 to 60 of 60 results