Показать сообщение отдельно
  #14 (permalink)  
Старый 01.11.2009, 23:38
Профессор
Отправить личное сообщение для Dmitry A. Soshnikov Посмотреть профиль Найти все сообщения от Dmitry A. Soshnikov
 
Регистрация: 25.02.2008
Сообщений: 707

Сообщение от Zeroglif
Можете включать голосовалку, я за by-value... ;-)
Не-а, я не участвую ;-) Единственное, на что могу согласиться, это поменять местами приоритеты - сначала говорить, что в ES используют терминологию by-value, но вообще, не касаемо реализаций и языков, это называется by-sharing (даже если! даже, если - by-sharing и не часто используется в быту; меня всегда больше теория интересует).

Сообщение от Zeroglif
by-ref в отношении объектов. Это даже в доках было. Eсли ты видел на vingrad-e на меня с моим by-value смотрели как на марсианина
Ну by-reference не верно, в любом случае, так что, на vingrad-e ты был прав.

Сообщение от Zeroglif
конкретизация переменных
Это, в смысле, ты имеешь в виду [[Get]]? Или, наоборот, только разрешение имени?

С другой стороны, технически, тогда обычное присвоение тоже создаёт копию ссылки и ничем не отличает от передачи в качестве параметра функции:

var a = {x: 10};
var b = a;

aRef = {baseObject: Global, propertyName: "a"}; // address: 0xFF
bRef = {baseObject: Global, propertyName: "b"}; // address: 0xFF (скопировался)

var a = {x: 20};
aRef = {baseObject: Global, propertyName: "a"}; // address: 0xFА (новый)
bRef = {baseObject: Global, propertyName: "b"}; // address: 0xFF (старый)


Вот в этом отношении говорить о значении (скопированном value адреса, ссылки) - да, конечно, правильно. И, повторю, тогда вообще нет разницы от присваивания и передачи в функции в качестве формального параметра (или есть, как думаешь?).

Но, теоретическая evaluation strategy - остаётся by-sharing, как специально выделенная и обособленная от by-value и by-reference и именно по этому критерию.
__________________
Тонкости ECMAScript

Последний раз редактировалось Dmitry A. Soshnikov, 01.11.2009 в 23:41.
Ответить с цитированием