Доступ к переменным IIFE из вложенных функций - PullRequest
0 голосов
/ 13 мая 2018

У меня есть IIFE с вложенной функцией внутри.Существует переменная word как внутри, так и снаружи вложенной функции.Как получить доступ к переменной word вне вложенной функции вместо внутренней?

Код:

(function (){

    let word = "Hello";

    function sayHello(){
        let word = "Greetings";
        console.log(word + " Everyone!"); // This is using the inside word variable instead of the outside one. How can I specify JS to use the outside one instead?
    }

    sayHello();

})();

1 Ответ

0 голосов
/ 13 мая 2018

Передайте внешнюю переменную в качестве параметра, чтобы вы могли ссылаться на нее отдельно от внутренней переменной:

(function() {
  let word = "Hello";
  function sayHello(outerWord) {
    let word = "Greetings";
    console.log(outerWord + " Everyone!");
  }
  sayHello(word);
})();

В качестве альтернативы просто присвойте переменным разные имена, если вам это разрешено - затенение обычно является плохой идеей именно по этой причине.

...