Как я могу сохранить ссылку на переменную в JavaScript? - PullRequest
0 голосов
/ 14 ноября 2018

В приведенном ниже примере он должен сначала распечатать false, но после этого его следует изменить на true.Но он сохраняет значение, которое было ему изначально присвоено.

var i = {
  control: {
      a: false,
      b: false,
  }
}

var test = i.control['a'];

setInterval(function () {
  document.body.innerHTML += test + ', ';
  i.control['a'] = true;
}, 500);

Я хочу иметь возможность обновлять переменную извне, но цикл должен иметь возможность проверять, какая переменная установлена ​​(что может быть любым из значений вэтот объект, и будет установлен при инициализации).

Я делаю это, чтобы попытаться сохранить код чистым и без необходимости создавать новую переменную в каждом цикле, чтобы получить / сохранить последнее значение.

1 Ответ

0 голосов
/ 14 ноября 2018

Вы можете взять ссылку на объект и взять последний ключ для значения.

var i = { control: { a: false, b: false } },
    test = i.control;

setInterval(function () {
    document.body.innerHTML += test.a + ', ';
    i.control.a = true;
}, 500);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...