Невозможно изменить значение Global var изнутри функции

Я пробовал использовать это решение, но у меня это не сработало. В моем случае я пытаюсь сохранить переменную с помощью одной функции и вызвать ее из другого

      var postalcode = "code didn't change";

export function save_postal_code(code) {
        var localcode = code
        let postalcode = localcode;
        console.log(code);
}

export function get_postal_code() {
        console.log(postalcode);
        return postalcode;
}

Функция save_postal_code регистрирует правильное значение, а функция get_postal_code - нет. Я не знаю, что делаю не так.

2 ответа

Вы повторно объявляете внутри, а не обновляете его значение.
Код нуждается в доработке, но это выходит за рамки этого ответа.
Иметь postalcode обновлено внутри save_postal_code(), пытаться:

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

удаление ключевого слова let должно решить вашу проблему

      var postalcode = "code didn't change";

export function save_postal_code(code) {
        var localcode = code
        postalcode = localcode;
        console.log(code);
}

export function get_postal_code() {
        console.log(postalcode);
        return postalcode;
}
Другие вопросы по тегам