通常是用在立即调用之前。但是并不是因为他是立即调用函数,而是为了文件合并的安全。
比如你有两个文件,a.js 和 b.js,里面都是一个立即调用函数:
// a.js
( function() {} )()
// b.js
( function() {} )()
如果你在构建过程中把两个文件压缩之后连接到一起,就变成了
( function() {} )()( function() {} )()
这样就出了问题,所以为了避免这个问题,你可以在 b.js 最前面加一个分号。
( function() {} )();( function() {} )()
很多第三方 JS 库需要考虑各种被使用的情况,所以前面可能会写个分号。
立即调用函数