Mohammed Bashr Abou نشر 27 أكتوبر 2023 أرسل تقرير نشر 27 أكتوبر 2023 (معدل) ليش لازم استعمل this في دالة البناء عند إنشاء دالة بينما في الكلاس لا .. تم التعديل في 27 أكتوبر 2023 بواسطة Mustafa Suleiman تعديل عنوان السؤال 1 اقتباس
0 Kirolos Nagy2 نشر 27 أكتوبر 2023 أرسل تقرير نشر 27 أكتوبر 2023 استخدام this في دالة البناء: عندما تستخدم this في دالة البناء، فإنك تخبر البرنامج أنك تريد الاشارة إلى الكائن الذي سيتم إنشاؤه. تستخدم this لتحديد أن الخصائص (متغيرات) التي تقوم بتعريفها تنتمي إلى هذا الكائن الذي تم إنشاؤه. عادة ما يتم استخدام this في لغات البرمجة مثل JavaScript وPython. عدم استخدام this في الكلاس: في اللغات التي تستخدم الكلاسات مثل Java وC++، عادةً لا تحتاج إلى استخدام this في دالة البناء. يمكنك الوصول مباشرة إلى الخصائص المثبتة في الكلاس دون الحاجة إلى this. عند تعريف الخصائص في دالة البناء، يعتبر البرنامج تلقائيًا أنها تنتمي إلى الكائن الحالي الذي يتم إنشاؤه. 2 اقتباس
0 Mustafa Suleiman نشر 27 أكتوبر 2023 أرسل تقرير نشر 27 أكتوبر 2023 أرجو التعليق أسفل فيديو الدورة الخاص بالسؤال لمساعدتك بشكل أفضل، وطرح الأسئلة العامة هنا. وبخصوص سؤالك، في جافاسكريبت، كل دالة هي كائن، بما في ذلك دالة البناء، وعندما يتم استدعاء دالة، يتم إنشاء كائن جديد لها، ويُعرف باسم المرجع. وذلك الكائن هو الذي يحتوي على جميع بيانات الدالة وسلوكها، وفي دالة البناء، يتم استخدام this للإشارة إلى كائن الدالة الجديد، وذلك ضروري لأنك تحتاج إلى الوصول إلى بيانات وسلوك الدالة من داخل دالة البناء. وكمثال عندما تريد تعيين قيمة لخاصية في دالة البناء، فأنت بحاجة إلى استخدام this للإشارة إلى الكائن الجديد، في المقابل، لا تحتاج إلى استخدام this في دالة (ميثود) في الكلاس، حيث أن تلك دالة تُعرف بالفعل بالكائن الذي تنتمي إليه، لذلك، يمكنك ببساطة الوصول إلى بيانات وسلوك الكائن باستخدام اسم الخاصية أو الطريقة. مثال على دالة بناء تستخدم this: function Person(name, age) { this.name = name; this.age = age; } const mohamed = new Person("mohamed", 30); console.log(mohamed.name); // "mohamed" console.log(mohamed.age); // 30 بينما في الكلاس: class Person { constructor(name, age) { this.name = name; this.age = age; } getFullName() { return `${this.name} (${this.age})`; } } const mohamed = new Person("mohamed", 30); console.log(mohamed.getFullName()); // "mohamed (30)" 1 اقتباس
السؤال
Mohammed Bashr Abou
ليش لازم استعمل this في دالة البناء عند إنشاء دالة بينما في الكلاس لا ..
تم التعديل في بواسطة Mustafa Suleimanتعديل عنوان السؤال
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.