Javascript IIFE和命名空间参数的使用

Javascript IIFE和命名空间参数的使用,javascript,Javascript,我正在浏览一些使用GoogleMapsAPI的代码 function initMap(){ (function(google , window){ var center = { center: {lat: -34.397, lng: 150.644}, zoom: 8 }; var map = new google.maps.Map(document.getElementById('map'), center); })(google , window); } 所以我理解

我正在浏览一些使用GoogleMapsAPI的代码

function initMap(){
(function(google , window){
var center = {
    center: {lat: -34.397, lng: 150.644},
    zoom: 8
};
var map = new google.maps.Map(document.getElementById('map'), center);    
})(google , window);
}
所以我理解IIFE以及它是如何防止全局范围污染的,但我不理解在上面的代码中将全局对象google和window传递给IIFE实现了什么。 有人能解释一下使用这种模式的优势是什么,我们在iLife中使用google和window对象到底做了什么

我们到底在iLife中使用google和window对象做什么

没有有用的东西,也没有分别的东西

窗口
在函数内部根本不使用


使用了
google
,但同步使用。如果它是异步使用的,那么传递它可能会很有用,这样它的值就不会被获取,但这里不是这样。

实际上它是毫无意义的。