Сеттерҳои хосияти мавҳумӣ дар ООП дар JavaScript
Ғайр аз геттерҳои хосияти мавҳумӣ, метавон сеттерҳои онҳоро низ эҷод кард. Дар ин ҳолат, дохили сеттер мо бояд маълумотро гирем, онҳоро ҷудо кунем ва қисмҳои мувофиқро ба хосиятҳои оммавии зарурӣ нависем.
Биёед кӯшиш кунем. Сеттери хосияти мавҳуми full-ро амалӣ кунем:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
set full(full) {
let [name, surn] = full.split(' ');
this.name = name;
this.surn = surn;
}
}
Дестуктуризациро содда кунем:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
set full(full) {
[this.name, this.surn] = full.split(' ');
}
}
Объекти классро эҷод кунем:
let user = new User('john', 'smit');
Маълумотро ба сеттери мавҳуми мо нависем:
user.full = 'eric jons';
Санҷем, ки хосиятҳои объект тағйир ёфтаанд:
console.log(user.name); // 'eric'
console.log(user.surn); // 'jons'
console.log(user.full); // 'eric jons'