Почему я должен передавать Window в качестве аргумента функции ()? - PullRequest
0 голосов
/ 27 марта 2020
 (function(window){
       var helloSpeaker = new Object ();
       var speakWord = "Hello";
       helloSpeaker.speak = function (name) {
           console.log(speakWord + " " + name);
       }
       window.helloSpeaker = helloSpeaker;
    })(window);

Из приведенного выше фрагмента я понимаю, что это выражение функции, вызываемого немедленно (IIFE), основной целью которого является защита закрытой переменной 'speakWord'. Я также удивлен, что нам нужно выставить объект 'helloSpeaker' в область окна, что является причиной для window.helloSpeaker = helloSpeaker;. Однако я, кажется, не понимаю, почему мы должны передавать окно в качестве аргумента функции, прекрасно зная, что она все еще находится в среде окна, где вызывается функция. Пожалуйста, зачем мне передавать окно в функцию?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...