Показать сообщение отдельно
  #19 (permalink)  
Старый 02.11.2009, 13:40
...
Отправить личное сообщение для Zeroglif Посмотреть профиль Найти все сообщения от Zeroglif
 
Регистрация: 09.03.2008
Сообщений: 216

Dmitry A. Soshnikov,

Пиши, пиши, вот цитаты B.E. со ссылками:

...the property's value is a *reference* to the object, not the object itself.
http://groups.google.com/group/mozil...ff6fa9deb204e1

JS is not C++. There is no deep or shallow copy on assignment. Object is a reference type, so v2 = v just copies the reference in v into v2, making both variables denote the same object.
http://groups.google.com/group/netsc...dd2121f1fb8424

There is no copy of any object data. The only thing that's copied is a *reference* (a safe pointer, if you will) that uniquely addresses the object.
http://groups.google.com/group/netsc...95f5eef93c1734

Just the reference - objects are reference types in JS, as in Java
http://groups.google.com/group/netsc...79c0c9f86a6336

Что-то по JScript на винграде есть... liskov-y я прочитал (manual языка), да, это был бы подходящий термин, если бы прижился, там они чётко описывают, что значением переменной является reference на объект. Но раз не прижился, то пиарить не буду, только в качестве экскурса... меня полностью удовлетворяет то, как компактно и точно звучит первая цитата в твоём предыдущем сообщении.
Ответить с цитированием