Javascript 为什么要将Angular应用程序包装在函数中?
我正在学习Angular,在我使用的所有资源中,我在Javascript 为什么要将Angular应用程序包装在函数中?,javascript,angularjs,Javascript,Angularjs,我正在学习Angular,在我使用的所有资源中,我在app.js文件中看到了这一点: (function () { \\\myAngularModules })(); 最常见的解释是无用的“这只是良好的实践” 问题: 在函数中包装我们的Angular JS代码真的是一种很好的实践吗?为什么? 它是什么样的功能?它做什么 请尽可能举例说明 在函数中包装我们的Angular JS代码真的是一种很好的实践吗? 为什么? 这是一个很好的实践,称为模块模式。作为一种模式,它
app.js
文件中看到了这一点:
(function () {
\\\myAngularModules
})();
最常见的解释是无用的“这只是良好的实践”
问题:
这是一个经典函数。不多不少。最后,我们使用调用操作符
()
,调用要执行的函数。后者也称为立即调用匿名函数(IIFE)。这就是所谓的立即调用匿名函数(IIFE)。它允许我们创建一个新的函数作用域并立即运行代码,这样就不会有我们创建的变量或其他项“泄漏”并操纵全局作用域
将您的代码泄漏到global可能会影响其他模块或第三方代码。这也有助于保护您的代码,让您思考您正在使用的哪些对象没有在本地范围内声明
作为一个更详细的解释,它涵盖了其他一些深奥的概念,如缩小优势。这是因为,如果使用第三方服务,您的变量不会与全局变量发生冲突,等等。请看这里的解释,为什么不解释就进行向下投票?下行投票者请。@AlexanderKobelev这是一篇优秀的文章,谢谢。@BhojendraNepal感谢您的输入。谢谢,我不接受您的回答,只是因为我不太喜欢您的链接;)