Взгляните на следующий код:Передача параметра в качестве указателя в JavaScript
var o;
(function (p) {
p = function() {
alert('test');
};
})(o);
o(); // Error: 'o is not a function'
В приведенной выше функции я создаю анонимную функцию, которая принимает один параметр, который самостоятельно вызывающую с ранее созданным объект передан как параметр. Затем я указываю этот объект на функцию (изнутри новой области) и в конечном счете (пытается) вызывать ее извне.
Мой вопрос в том, как передать этот аргумент «по ссылке», чтобы изменить указатель, на который он указывает?
Фактически, «передавать по ссылке» является немного неправильным в JavaScript. По отношению к другим языкам, которые имеют настоящие «ссылочные» типы, JavaScript делает * не * передавая что-либо по ссылке. Он всегда проходит по значению. Это значение может * держать * ссылку, которая, как я думаю, вы пытаетесь сказать. –