Skip to content

Commit 56d3bd7

Browse files
authored
Merge pull request #744 from dev99problems/patch-2
Minor improvements in property-accessors article
2 parents f66776a + 7c5e4ea commit 56d3bd7

File tree

1 file changed

+7
-7
lines changed
  • 1-js/07-object-properties/02-property-accessors

1 file changed

+7
-7
lines changed

1-js/07-object-properties/02-property-accessors/article.md

+7-7
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ alert(user.fullName); // Тарас Мельник
5353
*/!*
5454
```
5555

56-
Ззовні аксесор виглядає як звичайна властивість. В цьому і є ідея аксесорів властивостей. Ми не *викликаємо* `user.fullname` як функцію, ми *читаємо* її як звичайну властивість: гетер виконає свою роботу за кулісами.
56+
Ззовні аксесор виглядає як звичайна властивість. В цьому і є ідея аксесорів властивостей. Ми не *викликаємо* `user.fullname` як функцію, ми *читаємо* її як звичайну властивість: гетер виконає свою роботу за лаштунками.
5757

5858
Зараз `fullname` має тільки гетер. Якщо ми намагаємося присвоїти `user.fullName=`, буде помилка:
5959

@@ -87,7 +87,7 @@ let user = {
8787
*/!*
8888
};
8989

90-
// виконується встановлення повного ім’я із заданим значенням.
90+
// виконується встановлення повного імені із заданим значенням.
9191
user.fullName = "Аліса Бондар";
9292

9393
alert(user.name); // Аліса
@@ -134,9 +134,9 @@ alert(user.fullName); // Іван Іванов
134134
for(let key in user) alert(key); // name, surname
135135
```
136136

137-
Будь ласка, зверніть увагу, що властивість може бути або аксесором (має `get/set` методи) або властивістю даних (має `value`), але не обома одразу.
137+
Будь ласка, зверніть увагу, що властивість може бути або аксесором (має `get/set` методи) або властивістю даних (має `value`), але не обома одночасно.
138138

139-
Якщо ми спробуємо передати як `get` і `value` у тому ж дескрипторі, то буде помилка:
139+
Якщо ми спробуємо передати як `get` так і `value` у тому ж дескрипторі, то буде помилка:
140140

141141
```js run
142142
*!*
@@ -180,14 +180,14 @@ user.name = ""; // Ім’я занадто коротке...
180180

181181
Отже, ім’я зберігається у властивості `_name`, а доступ виконується за допомогою гетера та сетера.
182182

183-
Технічно зовнішній код може мати доступ до ім’я безпосередньо за допомогою `user._name`. Але існує широко відома домовленість, що властивості, що починаються з підкреслення `"_"`, є внутрішніми і не повинні використовуватися ззовні об’єкта.
183+
Технічно зовнішній код може мати доступ до ім’я безпосередньо за допомогою `user._name`. Але існує широко відома домовленість, що властивості, які починаються з підкреслення `"_"`, є внутрішніми і не повинні використовуватись ззовні об’єкта.
184184

185185

186186
## Використання для сумісності
187187

188-
Одним з чудових прикладів використання аксесорів полягає у тому, що вони дозволяють контролювати "звичайну" властивість даних в будь-який момент, замінюючи її гетером і сетером і налаштовуючи її поведінку.
188+
Один із чудових прикладів використання аксесорів полягає у тому, що вони дозволяють контролювати "звичайну" властивість даних в будь-який момент, замінюючи її гетером і сетером, і налаштовуючи її поведінку.
189189

190-
Уявіть, що ми почали реалізувати об’єкти користувача за допомогою властивостей даних `name` та `age`:
190+
Уявіть, що ми почали реалізовувати об’єкти користувача за допомогою властивостей даних `name` та `age`:
191191

192192
```js
193193
function User(name, age) {

0 commit comments

Comments
 (0)