update
This commit is contained in:
parent
962caebbb7
commit
87bf53d076
1825 changed files with 94929 additions and 0 deletions
|
@ -0,0 +1,29 @@
|
|||
Решение:
|
||||
|
||||
```js
|
||||
//+ run
|
||||
function User() {
|
||||
|
||||
var firstName, surName;
|
||||
|
||||
this.setFirstName = function(newFirstName) {
|
||||
firstName = newFirstName;
|
||||
};
|
||||
|
||||
this.setSurname = function(newSurname) {
|
||||
surname = newSurname;
|
||||
};
|
||||
|
||||
this.getFullName = function() {
|
||||
return firstName + ' ' + surname;
|
||||
}
|
||||
}
|
||||
|
||||
var user = new User();
|
||||
user.setFirstName("Петя");
|
||||
user.setSurname("Иванов");
|
||||
|
||||
alert( user.getFullName() ); // Петя Иванов
|
||||
```
|
||||
|
||||
Обратим внимание, что для "геттера" `getFullName` нет соответствующего свойства объекта, он конструирует ответ "на лету". Это нормально. Одна из целей существования геттеров/сеттеров -- как раз и есть изоляция внутренних свойств объекта, чтобы можно было их как угодно менять, генерировать "на лету", а внешний интерфейс оставался тем же.
|
Loading…
Add table
Add a link
Reference in a new issue