JavaScript中自调用函数的方法有什么区别?
第一个变体:
window.identityServer = (function () {
const identityServer = {
getModel () {
const model = JSON.parse(Encoder.htmlDecode(encodedJson))
return model
},
}
return identityServer
})()
第二个变体:
(function () {
const identityServer = {
getModel () {
const model = JSON.parse(Encoder.htmlDecode(encodedJson))
return model
},
}
return identityServer
})(window.identityServer)
第一个设置window.identityServer
函数中创建的对象。
第二个没有。它window.identityServer
作为参数传递,不使用它,也不对返回值执行任何操作。它最终什么都不做。