जावास्क्रिप्ट में ओओपी में विधियों और गुणों के नामों के टकराव

गुणों और विधियों के नाम मेल नहीं खाने चाहिए, इससे टकराव होगा। आइए एक उदाहरण पर देखें। मान लीजिए कि हमारे पास निम्नलिखित क्लास है:

javascriptclass User {
  name() {
    console.log('method');
  }
}

इस क्लास की एक वस्तु बनाएं:

javascriptlet user = new User;

इसकी विधि को कॉल करें, अभी सब काम करेगा:

javascriptuser.name(); // काम करता है

अब समान नाम वाले गुण में डेटा लिखें, जिससे विधि का कोड मिट जाएगा:

javascriptuser.name = 'str';
user.name(); // त्रुटि

इस तरह के टकरावों से बचने के लिए हमेशा विधियों को क्रिया-नाम दें, और गुणों को संज्ञा-नाम दें।

Задание 1

निम्नलिखित कोड में की गई त्रुटि को सही करें:

javascriptclass Employee {
  constructor(salary) {
    this.salary = salary;
  }
  salary() {
    return this.salary + '
;
  }
}