لفهم كيفية استخدام واستدعاء الدوال داخل كائن في جافاسكربت، يجب أن ننظر إلى الكود الذي قدمته ونقوم بإصلاح الأخطاء. في الكود الحالي، هناك عدة أخطاء يجب تصحيحها:
-
عند تعريف الدالة داخل الكائن، استخدم النمط الصحيح لتعريف الدالة.
-
عند تعريف الدالة، استخدم النمط الصحيح لتعريف الكائن الذي تريد استخدامه.
-
عند استدعاء الدالة، استخدم الاسم الصحيح للكائن الذي تم إنشاؤه.
تصحيح الأخطاء يمكن أن يكون كما يلي:
javascriptvar _images = {
test: {
path: 'test.jpg',
areas: [{
coords: '211,38,238,60',
text: 'let me test it',
onclick: function() {
alert("Hello");
}
}]
}
};
var obj = {
hello: function() {
alert("Hello");
}
};
var asdf = new obj();
asdf.hello();
هذا الكود يقوم بإنشاء كائن _images
يحتوي على كائن test
الذي يحتوي على خصائص مثل path
و areas
. ثم يقوم بإنشاء دالة hello
داخل كائن obj
. يمكنك الآن استدعاء الدالة hello
باستخدام asdf.hello()
.
يرجى ملاحظة أن الكود الذي قدمته لا يحتوي على طريقة لاستدعاء دالة من الكائن areas
، لأنه لم يتم تعريف دالة obj
بشكل صحيح. إذا كنت ترغب في استدعاء دالة من areas
، يجب عليك تعريف الدالة بشكل صحيح داخل areas
واستخدامها بنفس الطريقة كما هو موضح في الكود الصحيح أعلاه.
المزيد من المعلومات
عند استخدام الدوال داخل كائن في جافاسكربت، يمكنك تعريف الدوال كخصائص في الكائن، ومن ثم استدعاءها باستخدام اسم الكائن متبوعًا بنقطة واسم الدالة. على سبيل المثال، إذا كان لدينا كائنًا يمثل شخصًا ونريد تعريف دالة داخله تقوم بطباعة اسم الشخص، يمكن تعريفها كالتالي:
javascriptvar person = {
name: "John",
age: 30,
printName: function() {
console.log(this.name);
}
};
ثم يمكن استدعاء الدالة printName
باستخدام:
javascriptperson.printName();
سيطبع هذا “John” في وحدة تحكم المتصفح أو في الكونسول إذا كنت تستخدم Node.js.