اذهب إلى المحتوى

السؤال

Recommended Posts

  • 1
نشر

السبب في الخطأ أنك تضع عملية جمع بين المؤقت والقيمة المراد إدخالها للطريقة hello.

أي أنك لا تقوم بتعريف الوسيط name ومنه سيعتبره undefined، تقوم بحل المشكلة بالطريقة التي ذكرت في التعليق السابق. أو بإمكانك كتابة:

setTimeout(() => hello("Youssef"), 3000)

 

  • 0
نشر (معدل)

تعريف undefined هو انها خاصية للكائن العام  (global object) وهي القيمة الابتدائية للمتغير.

للتبسيط انظر للمثال الاتي:

var x; /* undefined متغير ليس له القيمة لذلك القيمة المبدئية هي */

console.log(x);

/**
 * Output
 * undefined
 */

لذلك في سؤالك انت لم تمرر قيمة للمعامل name بسبب وضعك لرمز + قبل قيمة المعامل لذلك لم تفهم الدالة setTimeout ان النص "Youssef" قيمة المعامل name فعند تنفيذ الدالة hello قامت الدالة console.log  بارجاع القيمة المبدئية للمعامل name والتي هي undefined.

يمكنك الإطلاع على المزيد من خلال موسوعة حسوب من هنا

تم التعديل في بواسطة Mohammed Fahmy3

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...