Mohammed Hhhh نشر 1 أغسطس 2022 أرسل تقرير نشر 1 أغسطس 2022 const new_day = new Date() -- new new ما عملها و ما الفائده منها 1 اقتباس
0 محمد عاطف17 نشر 1 أغسطس 2022 أرسل تقرير نشر 1 أغسطس 2022 مرحبا أخى . new تستخدم لبناء الكائنات وهى تقوم بارجاع كائن من النوع التالى لها . يمكنك قرائة المقال التالى لفهم طريقة عملها وفيما تستخدم . https://academy.hsoub.com/programming/javascript/الباني-والعامل-new-في-جافاسكربت-r801/ اقتباس
0 Mohammed Hhhh نشر 1 أغسطس 2022 الكاتب أرسل تقرير نشر 1 أغسطس 2022 بتاريخ 29 دقائق مضت قال محمد عاطف11: مرحبا أخى . new تستخدم لبناء الكائنات وهى تقوم بارجاع كائن من النوع التالى لها . يمكنك قرائة المقال التالى لفهم طريقة عملها وفيما تستخدم . https://academy.hsoub.com/programming/javascript/الباني-والعامل-new-في-جافاسكربت-r801/ طيب انا استطيع كتابة Date() بدون new ما الفرق اقتباس
1 محمد عاطف17 نشر 1 أغسطس 2022 أرسل تقرير نشر 1 أغسطس 2022 كما وضحت اخى فإن new تستخدم لإنشاء كائن و هذا الكائن له خصائص و دوال . ويمكن أيضا إنشاء Date() بدون new ولكن الفرق انه سيوكن من نوع سلاسل نصية . لنرى الفرق بالكود let date1 = new Date(); let date2 = Date(); console.log( date1); // 2022-08-01T09:13:50.481Z وهذا كائن console.log( date2); // Mon Aug 01 2022 09:13:50 GMT+0000 (GMT) وهذا سلسلة نصية console.log(typeof date1); // object هذا من نوع كائن console.log(typeof date2); // string وهذا من نوع سلسلة نصية وكما قلت ان كل كائن لديه خصائص ودوال وبهذا فإن قمنا بإستخدام المتغير المنشأ بإستخدام new نستطيع استخدام الخصائص والدوال الخاصة بهذا الكائن و العكس بالنسبة للمتغير المنشأ بدون new لنرى الفرق فى الكود . // الكائن من نوع وقت لديه دالة تقوم بطباعة البوم let date1 = new Date(); let date2 = Date(); console.log( date1.getDay()); // هنا سوف يقوم بطباعة اليوم console.log( date2.getDay()); // هنا سوف يحدث خطأ لان المتغير من نوع سلسلة نصية وهو لايملك الدوال الخاصة بالكائن Date كما موضح فإن السطر الثالث سوف يقوم بطباعة رقم اليوم. والسطر الرابع سوف يحدث خطأ لان المتغير من نوع سلسلة نصية وهو لايملك الدوال الخاصة بالكائن Date اقتباس
0 Hassan Hedr نشر 1 أغسطس 2022 أرسل تقرير نشر 1 أغسطس 2022 بتاريخ منذ ساعة مضت قال Mohammmed Mahmoud: طيب انا استطيع كتابة Date() بدون new ما الفرق عند استدعاء Date كتابع فإن الناتج من تلك العملية سيكون سلسلة نصية تعبر عن التاريخ الحالي، كلمة new تفيد في بناء كائنات من صنف أو تابع يعامل معاملة التابع الباني، وعند استدعاء نفس التابع مسبوقًا بكلمة new، سيُنشئ جافاسكربت كائن فارغ جديد object ويربطه bind بعملية تنفيذ ثم يربط ال prototype لذلك التابع بهذا الكائن ويعيد ذلك الكائن كناتج من تلك العملية، الفائدة من ذلك أن كل التوابع المعرفة ضمن prototype التابع الباني سيتم تعيينها ضمن الكائن الجديد، وأن أي متغيرات يتم تعيينها ضمن التابع على الكلمة this سيتم تعيينها ضمن الكائن أيضًا، أي الهدف من الكلمة new هي إنشاء نسخة كائن جديدة تحمل صفات التابع الباني، أو ما يشبه في لغات البرمجة كائنية التوجة الأخرى عملية إنشاء كائن جديد من صنف class، يمكنك الاستفادة من قراءة المقالات التالية: اقتباس
السؤال
Mohammed Hhhh
new ما عملها و ما الفائده منها
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.