jquery - 这会对我网站的加载时间产生负面影响吗?
问题描述
我正在从像这样的单独的 HTML 文件中加载我的网站的部分内容(页眉、页脚和导航)
$(function () {
$("#navbar").load("nav.html");
$("#header").load("header.html");
$("#footer").load("footer.html");
});
我这样做是为了让编辑整个网站的某些元素更容易,一旦我开发了更多页面,完成的项目将有大约 20-30 页。
问题不在于它们的实际加载,它们按预期正确显示。
我的问题:
将这些元素中的每一个保留在每个 HTML 文件中,然后如果我需要编辑返回每个 HTML 文件,是否更好地提高成品的性能?
解决方案
我不认为这会对性能产生任何重大影响。
然而,设计的影响是巨大的。干燥——不要重复自己。这很烦人且容易出错。
用一些性能换取更好的可读性和可维护性是很常见的,因为这通常是正确的选择。
不要说空话,这里是令人惊叹的 Jon Skeet 的摘录(C# In Depth,第四版,p399)
作为一般原则,在您以有意义且可重复的方式衡量性能并为其设定目标之前,我不会开始对您的代码进行任何更改以提高性能。如果您不小心,您可以以优化的名义使您的代码复杂化,结果发现即使您大大提高了一两个方法的性能,这些方法仍然不在应用程序的关键路径上
如果你决定做一些基准测试,你不妨考虑一种非 js 的方式。
<object data="includes/header.html" type="text/html"> </object>
如果存在性能差异,我希望纯 html 方法更快。
推荐阅读
- reactjs - setState 在 useEffect 挂钩中不起作用
- google-cloud-platform - 在新的 firebase 项目中使用旧版 google drive 客户端
- python - 如何使 PyCharm 调试器显示类似序列的对象的项目?
- sqlite - 如何从不同的表中使用 SQLite 中的 st_within 函数进行更新?
- java - 如何在第一个错误时停止 - reactor Flux filterWhen()
- azure-aks - AKS 动态磁盘的 Azure 磁盘警报
- powerquery - 电源查询错误?后续步骤中串联列表更改的顺序
- spring-data-elasticsearch - LocalDateTime 与@Query 格式错误,秒数被删除
- appium-android - 使用 serenity bdd 点击 android 的 home 键
- javascript - 刷新窗口后重置本地存储值