Здравствуйте.
Сегодня столкнулся с необходимостью изменения объекта внутри функции, а за её пределами эти изменения должны быть собственно видны. Был
здесь, и да, опровергаю - у меня так почему то не работает, при том что передаю я полноценный объект, с полями и методами.
Мои детали: ввиду определённых логических хитросплетений (и возможно технической безграмотности), ссылка на желаемый объект объявлена глобально, изначально сразу её содержимое равняется
null.
В зависимости от определённых условий, мне нужно передать эту ссылку в функцию, функция что-то чудит на локальном уровне, и изначально переданная глобальная переменная должна меняться соответственно.
Сделано так потому что изначально два одинаковых объекта с разными интерфейсными назначениями.
var global_1=null,global_2=null;
function Change(local_once)
{
// здесь что-то творим с local_once
}
/* ... */
function UserAction(param)
{
if (param==1)
Change(global_1);
else
Change(global_2);
}
Доступ к глобальным переменным не должен зависеть от выполнения, а значит - должно меняться состояние в зависимости от параметров пользовательского события.
То есть, в какой-то момент в консоли по запросу
global_1 или
global_2 мне нужно видеть, что там находится.
НО, передаваемая переменная глобально не изменяется. Что делать ?