Page 106 - 6105
P. 106
var menu = {
width: 300,
height: 200,
title: "Menu"
};
var counter = 0;
for (var key in menu) {
counter ++;
}
alert ( "Всього властивостей:" + counter);
8.4. Передача об’єктів за посиланням
Фундаментальною різницею об'єктів від примітивів, є їх зберігання і
копіювання «за посиланням». Звичайні значення: рядки, числа, булеві значення,
null / undefined при присвоєнні змінних копіюються цілком або, як кажуть, «за
значенням».
var message = "Привіт";
var phrase = message;
В результаті такого копіювання вийшли дві повністю незалежні змінні, в
кожній з яких зберігається значення "Привіт".
З об'єктами - все не так. В змінній, якій присвоєно об'єкт, зберігається не сам
об'єкт, а «адреса його місця в пам'яті», іншими словами - «посилання» на нього.
Ось як виглядає змінна, якій присвоєно об'єкт:
var user = {
name: "Вася"
};
105