Super
super কীওয়ার্ড ব্যবহার করা হয় একটি অবজেক্টের প্যারেন্টের ফাংশন অ্যাক্সেস ও কল করার জন্য। super.prop এবং super[expr] এক্সপ্রেশনগুলো ক্লাস ও অবজেক্ট লিটারেল দুটোয়ই যেকোনো মেথড ডেফিনিশনে বৈধ। এটি "extended" ক্লাসে ব্যবহার হয়, যেটি "extends" কীওয়ার্ড ব্যবহার করে।
সিনট্যাক্স
super(arguments);
উদাহরণ
নিচের উদাহরণে, "Person" ক্লাসের বৈশিষ্ট্যগুলো "Student" ক্লাসে এক্সটেন্ড করা হয়েছে। দুটো ক্লাসে ইউনিক প্রপার্টি ব্যবহার করা হয়েছে। এখানে "super" কীওয়ার্ড ব্যবহার করা হয়েছে প্যারেন্ট ক্লাস (Person)-এর প্রপার্টি এক্সটেন্ডেড ক্লাস (Student)-এ অ্যাক্সেস করার জন্য, আর "this" কীওয়ার্ড ব্যবহার করা হয়েছে এক্সটেন্ডেড ক্লাসের নিজস্ব প্রপার্টি অ্যাক্সেস করার জন্য।
<html> <body> <script>
class Person {
constructor(name, grade) {
this.name = name;
this.grade = grade;
}
goal() {
return `${this.name} wants to become a cricketer!`;
}
interest() {
return `${this.name} interested in cricket!`;
}
}
class Student extends Person {
constructor(name, grade) {
super(name, grade);
}
need() {
return `${this.name} needs a cricket kit`;
}
career() {
return `${super.interest()} ${super.goal()} ${this.need()}`;
}
}
const student = new Student('Rishab pant', '7');
document.write(student.career());
</script> </body> </html>
আউটপুট
Rishab pant interested in cricket! Rishab pant wants to become a cricketer! Rishab pant needs a cricket kit