IIFE和名称空间的参数用法

时间:2019-02-15 13:14:14

标签: javascript

我正在查看一些使用google maps API的代码。

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和窗口传递给IIFE的方式,如何在上述代码中实现。 有人可以解释一下使用此模式的好处是什么,以及我们对IIFE中的google和window对象到底做了什么?

1 个答案:

答案 0 :(得分:1)

  

IIFE中的Google和Window对象到底在做什么?

没什么用,分别没有。

window在函数内部根本没有使用。

google被使用,但是是同步的。如果它是异步使用的,那么传递它可能会很有用,这样它的值就不会为overwritten between multiple uses of it,但这不是这种情况。