(function(window, document) {
//todo something
})(window, document);
看到好多人这么写,有什么意义么?
window,document作为全局的变量有必要传参数到立即执行的匿名函数内部么?
(function(window, document) {
//todo something
})(window, document);
看到好多人这么写,有什么意义么?
window,document作为全局的变量有必要传参数到立即执行的匿名函数内部么?
(function(window,doc) {
// doc == document
doc.xxx
})(window,document);
可以理解了吗?
里面是局部变量,外部是全局变量。
好处是与其他代码混合的时候不会混淆全局变量。
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答830 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
一:代码压缩时window,document参数可以写成w,d之类,如果访问到全局变量则不能压缩
二:性能优化,把全局变量传入函数,在函数内就有了window和docment的局部变量,每次访问在函数内可以找到,就不用再去全局找