Page 104 - 6105
P. 104
{Name: "Маша", age: 19}
...
Для їх ефективного зберігання буде створена структура, яка описує даний
вид об'єктів. Виглядати вона буде приблизно так: <string name, number age>. А
самі об'єкти будуть представлені в пам'яті тільки даними:
<Структура: string name, number age>
Вася 25
Петя 22
Маша 19
При додаванні нового об'єкта такої ж структури досить зберігати значення
полів, але не їх імена.
8.2. Додавання до об’єкта нової властивості
Нехай до одного з об’єктів, розглянутих у попередньому прикладі, додали
властивість isAdmin:
user.isAdmin = true;
В цьому випадку браузер перевіряє, чи існує структура, під яку підходить
такий об'єкт. Якщо немає – вона створюється і об'єкт прив'язується до неї.
Сучасні інтерпретатори дуже стараються оптимізувати як код, так і
структури даних. Деталі застосування і реалізації цього способу зберігання
варіюються від браузера до браузеру.
8.3. Перебір властивостей
Для перебору всіх властивостей об'єкта використовується цикл за
властивостями for..in. Ця синтаксична конструкція відрізняється від розглянутого
раніше циклу for (;;).
For..in
Синтаксис:
103