JavaScript да ООП да свойства геттерлари
Фарз қилайлик, бизда куйидаги хусусий свойстваларга эга класс бор:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
}
Кўриб турганингиздек, бу свойствалар объект яратилганда бир марта белгиланади. Аммо, ҳозирги вақтда бу свойстваларни ўқиш имкони йўқ, чунки улар хусусий ва ўқиш учун мос келувчи усуллар мавжуд эмас.
Келгинг, бизга ўз свойстваларимиз учун ушбу свойстваларни
ўқиш имконини берадиган махсус
усулларни ясайлик.
Бундай усуллар (улар геттерлар деб аталади)
get сўзи билан бошланиши керак, сўнгра
ўқиладиган свойстванинг номи келиши керак.
Келгинг, бизга ўз свойстваларимизнинг геттерларини ясайлик:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
getName() {
return this.#name;
}
getSurn() {
return this.#surn;
}
}
Келгинг, уларнинг ишини текширайлик. Объект яратамиз, параметр сифатида фойдаланувчи маълумотларини берсак:
let user = new User('john', 'smit');
Келгинг, бу маълумотларни геттерлардан фойдаланиб ўқайлик:
console.log(user.getName());
console.log(user.getSurn());
Employee классасида учта
хусусий свойства ясангиз: исм, маош
ва ёш.
Конструкторга параметр сифатида ушбу свойстваларнинг қийматларини беринг.
Бизга хар бир свойствамизнинг қийматини чиқарадиган геттерларни ясангиз.