18

可能重复:
如何将 js 文件包含在另一个 js 文件中?

假设我有几个 JavaScript 源文件:a.jsa1.jsa2.js. 从和a.js调用函数的函数。a1.jsa2.js

现在我必须在我的 HTML 页面中声明所有这些文件。我只想a.js在 HTML 和 "import/include"a1.js以及源文件a2.js中声明。a.js

是否有意义?我可以在 JavaScript 中做到这一点吗?

4

3 回答 3

16

您不能在 vanilla javascript 中指定导入。

所以你的解决方案(不包括重型服务器端框架)是:

只要您没有经验,并且文件数量很少(少于 15 个),我建议您简单地选择第一个或第二个解决方案。在开始学习 javascript 时,使用模块加载器可能会产生您不想调试的副作用。

于 2012-06-28T16:14:52.473 回答
12

您可以导入:

<script type="text/javascript"src="a1.js"></script>
<script type="text/javascript"src="a2.js"></script>
<script type="text/javascript"src="a3.js"></script>

如果你想直接从 JS 做,你可以使用 Ajax,这篇文章解释了如何: include-javascript-file-inside-javascript-file

于 2012-06-28T16:20:38.383 回答
2

您可以使用某些工具将 JavaScript(以及 CSS)文件捆绑在一起,以减少必须包含的文件数量。这也提高了页面加载性能。

这些工具将多个 JavaScript 文件组合成一个 JavaScript 文件(也可以选择缩小文件),并将多个 CSS 文件组合成一个 CSS 文件。这导致从浏览器到服务器的 HTTP 连接更少,因此需要串行获取的内容更少。

ASP.Net MVC 4 对此有内置支持:

http://theshravan.net/bundling-and-minification-support-in-asp-net-mvc-4/

其他环境也有许多解决方案,例如Juicer

如果您无法捆绑所有资源(可能一些来自 CDN,而另一些则在本地提供),您可以使用诸如require.js 之类的负载管理器。

于 2012-06-28T16:12:13.873 回答