Zachowanie przy dostępie lub ustawianiu właściwości w obiekcie możesz zmieniać przy pomocy getterów i setterów.
Słowo kluczowe get pozwala zmienić zachowanie przy pobieraniu wartości właściwości.
class Person {
constructor(name, surname) {
this.name = name;
this.surname = surname;
}
get fullname() {
return `${this.name} ${this.surname}`;
}
}
const john = new Person('John', 'Dee');
console.log(john.fullname); // John Dee
Analogicznie można zmienić sposób zachowania przy ustawianiu wartości.
class Person {
constructor(name, surname) {
this.name = name;
this.surname = surname;
}
get fullname() {
return `${this.name} ${this.surname}`;
}
set fullname(value) {
const data = value.split(" ");
this.name = data[0];
this.surname = data[1];
}
}
const john = new Person('John', 'Dee');
john.fullname = "Annie Stark";
console.log(john.fullname); // Annie Stark
Ćwiczenie 1 - Przygotuj klasę, która reprezentować będzie artykuł. W momencie wyciągania treści artykułu zwróć go jako ciąg znaków osadzony wewnątrz tagów <p></p>
np.
const article = new Article('Lorem ipsum dolor sit amet.');
console.log(article.content); // <p>Lorem ipsum dolor sit amet.</p>
Ćwiczenie 2 - Przygotuj klasę FormData, która przy przypisaniu wartości do email sprawdzi czy zawiera on znak @, część hosta i użytkownika. W przypadku gdy email będzie niepoprawny rzuć błąd.
const form = new FormData();
form.email = 'john'; // Error
form.email = '[email protected]'; // Error
form.email = '[email protected]';
Nasza strona internetowa używa plików cookies (tzw. ciasteczka) w celach statystycznych, reklamowych oraz funkcjonalnych. Dowiedz się więcej jak je wyłączyć. Ta strona jest chroniona przez reCAPTCHA i Google polityka prywatności Google i regulamin Google.