Migogoro ya Majina ya Mbinu na Sifa katika OOP katika JavaScript
Majina ya sifa na mbinu haipaswi kufanana, hii itasababisha migogoro. Hebu tuangalie kwa mfano. Tuchukulie tuna darasa lifuatalo:
javascriptclass User {
name() {
console.log('method');
}
}
Tutengeneze kitu cha darasa hili:
javascriptlet user = new User;
Tuita mbinu yake, kwa sasa kila kitu kitafanya kazi:
javascriptuser.name(); // inafanya kazi
Sasa tuandike data kwenye sifa iliyo na jina moja, ikifuta hivyo msimbo wa mbinu:
javascriptuser.name = 'str';
user.name(); // hitilafu
Ili kuepuka migogoro kama hii kila wakati papeana mbinu majina-yatenzi, na sifa - majina-yajina.
Задание 1
Sahihisha hitilafu, iliyofanywa katika msimbo ufuatao:
javascriptclass Employee {
constructor(salary) {
this.salary = salary;
}
salary() {
return this.salary + '
;
}
}