【问题标题】:JavaScript: merging files without problems?JavaScript:合并文件没有问题?
【发布时间】:2009-03-14 21:15:16
【问题描述】:

我有三个要合并到一个文件中的 javascript 文件。是否可以将所有代码复制粘贴到一个文件中,还是会出现命名空间冲突和其他问题?

编辑:我担心每个文件都像一个封装每个文件代码的命名空间,如果我合并文件,这种封装将不复存在。

【问题讨论】:

    标签: javascript performance optimization


    【解决方案1】:

    如果脚本文件全部加载到 <head> 中,并且您按照它们在 HTML 中出现的顺序粘贴它们,那么应该没有任何问题。

    话虽如此,如果他们使用 document.write 我不确定...

    【讨论】:

    • 我不确定 - 如果其中一个 javascript 文件被破坏,我认为如果单独包含它会被单独忽略。如果合并它,则合并结果将被破坏。只需要进行一些测试以确保某些脚本已加载/可以解决此问题。
    【解决方案2】:

    如果它们在按顺序加载时都可以工作,那么将它们连接到一个文件并改为你没有区别。只需确保按照与单独加载时相同的顺序将它们放在一起。

    【讨论】:

      【解决方案3】:

      回答您的编辑:不,每个文件都不会充当单独的命名空间。

      每个文件的顶层将共享相同的全局命名空间。因此,拥有所有三个内容的单个文件与单独引用每个文件相同,假设内容以相同的顺序出现。

      【讨论】:

        【解决方案4】:

        试试看它是否有效。 :) 命名空间冲突将完全取决于代码,所以如果不发布它,很难告诉你。只要它们没有错误,将它们放在一个文件中应该不会有问题,但如果一个依赖于另一个,请确保将它们按正确的顺序放置。

        【讨论】:

          【解决方案5】:

          JavaScript 中绝对没有命名空间封装,除非您竭尽全力实现它。默认情况下,一切都在全局命名空间中结束。 JavaScript module pattern 有助于减少全局命名空间污染。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-05-11
            • 1970-01-01
            • 2017-09-07
            • 2019-09-10
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多