从不同的js文件调用函数比从一个文件调用慢吗?

时间:2010-09-24 13:32:02

标签: javascript

调用不同JavaScript文件中的函数会减慢浏览器的JavaScript处理速度吗?

换句话说,我可以将文件中的函数调用到另一个文件吗? 或者在同一个文件中调用函数会更好吗?

4 个答案:

答案 0 :(得分:4)

完全没有区别。无论代码来自哪个脚本文件,它都会被解释到文档的上下文中,对于页面上的所有脚本文件和内联脚本都是相同的。

您可以使用这个令人难以置信的草率脚本进行测试:http://jsbin.com/uxiye

有些偏离主题,但其他一些回答者完全正确地指出,虽然执行函数没有区别,但脚本加载时间可能会有很大差异< / em> ...你没有询问页面加载时间,但仍值得指出。

答案 1 :(得分:2)

只要它们全部加载,这就是标准功能,不会导致性能下降。

答案 2 :(得分:2)

从执行的角度来看,没有区别。

但请记住,加载一个多合一JS文件比许多JS文件更快 - 服务器只需要第一个询问一次。

答案 3 :(得分:0)

嗯,脚本标签相互阻挡,所以它们不是一次全部下载。为此,您需要执行异步加载

其次,您必须处理对服务器的往返调用以获取文件并为此获取延迟命中。

最后,您可以解析并执行代码。假设您没有重复的函数,它们将解析相同的函数并执行相同的函数。

所以是的,它的速度较慢,但​​不是因为JavaScript,而是因为HTML和网络。请参阅Steve Souder的网站或他关于表现的书籍。