diff --git a/1-js/07-object-properties/02-property-accessors/article.md b/1-js/07-object-properties/02-property-accessors/article.md index 5ab33150d..d538a6c63 100644 --- a/1-js/07-object-properties/02-property-accessors/article.md +++ b/1-js/07-object-properties/02-property-accessors/article.md @@ -53,7 +53,7 @@ alert(user.fullName); // Тарас Мельник */!* ``` -Ззовні аксесор виглядає як звичайна властивість. В цьому і є ідея аксесорів властивостей. Ми не *викликаємо* `user.fullname` як функцію, ми *читаємо* її як звичайну властивість: гетер виконає свою роботу за кулісами. +Ззовні аксесор виглядає як звичайна властивість. В цьому і є ідея аксесорів властивостей. Ми не *викликаємо* `user.fullname` як функцію, ми *читаємо* її як звичайну властивість: гетер виконає свою роботу за лаштунками. Зараз `fullname` має тільки гетер. Якщо ми намагаємося присвоїти `user.fullName=`, буде помилка: @@ -87,7 +87,7 @@ let user = { */!* }; -// виконується встановлення повного ім’я із заданим значенням. +// виконується встановлення повного імені із заданим значенням. user.fullName = "Аліса Бондар"; alert(user.name); // Аліса @@ -134,9 +134,9 @@ alert(user.fullName); // Іван Іванов for(let key in user) alert(key); // name, surname ``` -Будь ласка, зверніть увагу, що властивість може бути або аксесором (має `get/set` методи) або властивістю даних (має `value`), але не обома одразу. +Будь ласка, зверніть увагу, що властивість може бути або аксесором (має `get/set` методи) або властивістю даних (має `value`), але не обома одночасно. -Якщо ми спробуємо передати як `get` і `value` у тому ж дескрипторі, то буде помилка: +Якщо ми спробуємо передати як `get` так і `value` у тому ж дескрипторі, то буде помилка: ```js run *!* @@ -180,14 +180,14 @@ user.name = ""; // Ім’я занадто коротке... Отже, ім’я зберігається у властивості `_name`, а доступ виконується за допомогою гетера та сетера. -Технічно зовнішній код може мати доступ до ім’я безпосередньо за допомогою `user._name`. Але існує широко відома домовленість, що властивості, що починаються з підкреслення `"_"`, є внутрішніми і не повинні використовуватися ззовні об’єкта. +Технічно зовнішній код може мати доступ до ім’я безпосередньо за допомогою `user._name`. Але існує широко відома домовленість, що властивості, які починаються з підкреслення `"_"`, є внутрішніми і не повинні використовуватись ззовні об’єкта. ## Використання для сумісності -Одним з чудових прикладів використання аксесорів полягає у тому, що вони дозволяють контролювати "звичайну" властивість даних в будь-який момент, замінюючи її гетером і сетером і налаштовуючи її поведінку. +Один із чудових прикладів використання аксесорів полягає у тому, що вони дозволяють контролювати "звичайну" властивість даних в будь-який момент, замінюючи її гетером і сетером, і налаштовуючи її поведінку. -Уявіть, що ми почали реалізувати об’єкти користувача за допомогою властивостей даних `name` та `age`: +Уявіть, що ми почали реалізовувати об’єкти користувача за допомогою властивостей даних `name` та `age`: ```js function User(name, age) {