gpt4 book ai didi

Javascript - 结合还是不结合,这是个问题

转载 作者:可可西里 更新时间:2023-11-01 02:44:14 24 4
gpt4 key购买 nike

好的,所以我知道为了提高效率将所有页面 Javascript 合并到一个外部文件中是显而易见的,但这并不是这里的问题。

假设我有一个带有搜索字段的 Default.htm,它附加了一点 Javascript 魔法。然后我有 Contact.htm 和一个附有一些 Javascript 魔法的联系表。最后,我有一个 FAQ.htm,其中包含一些显示答案的 jQuery 面板……你明白了。

基本上我有三个页面都需要“一些”javascript,但其他页面都没有使用 Javascript。

是将所有 Javascript 组合成一个加载一次然后存储在缓存中的大缩小文件更好,还是在默认页面上使用单个 Javascript 文件而不是在联系页面上使用它更好……等等?

在这种情况下什么最有效?

选项:1

Default.htm
jquery.js
default.js

Contact.htm
jquery.js
contact.js

Faq.htm
jquery.js
faq.js

选项:2

Default.htm
jquery-default-contact-faq-min.js

Contact.htm
jquery-default-contact-faq-min.js

Faq.htm
jquery-default-contact-faq-min.js

PS:对于你们所有的 asp.net 人员,我正在使用 Combres 来合并、缩小和控制我的 Javascript 文件

最佳答案

我肯定会投票合并它们。如果您担心“未使用”的 Javascript 的解析或设置时间,那么我建议在闭包中使用每个文件构建 Javascript,然后在您需要的页面上运行您需要的闭包。例如:

// File 1
window.closures = window.closures || {}
window.closures["page1"] = (function() {
// Javascript for Page 1
});

// File 2
window.closures = window.closures || {}
window.closures["page2"] = (function() {
// Javascript for Page 2
});

// File 3
window.closures = window.closures || {}
window.closures["page2"] = (function() {
// Javascript for Page 2
});

然后,在您的页面中:

<!-- This one combined.js file will be downloaded once and cached //-->
<script type="text/javascript" src="combined.js"></script>
<script>
// Run the Javascript in your combined.js intended for page2
window.closures["page2"]()
</script>

关于Javascript - 结合还是不结合,这是个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3655735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com