Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 功能定位对整体性能的影响_Javascript_Performance - Fatal编程技术网

Javascript 功能定位对整体性能的影响

Javascript 功能定位对整体性能的影响,javascript,performance,Javascript,Performance,我有一个相当大的javascript应用程序,正在尝试优化性能。如果我有一个循环,它将执行一个小函数数千次,那么将小函数远离调用函数(代码方面)是否会影响性能?谢谢。在循环中声明函数或在每次迭代后调用函数没有区别。我被教导,每个函数和变量根据其大小在指定位置的RAM中创建其空间。Javascript知道函数或变量在内存中的位置,因为我们给它指定了一个类似foo的名称 for(var i = 0; i < 1000; i++) foo(i); ... Your 300 lines funct

我有一个相当大的javascript应用程序,正在尝试优化性能。如果我有一个循环,它将执行一个小函数数千次,那么将小函数远离调用函数(代码方面)是否会影响性能?谢谢。

在循环中声明函数或在每次迭代后调用函数没有区别。我被教导,每个函数和变量根据其大小在指定位置的RAM中创建其空间。Javascript知道函数或变量在内存中的位置,因为我们给它指定了一个类似
foo
的名称

for(var i = 0; i < 1000; i++) foo(i);
... Your 300 lines
function foo(i) {
   document.body.innerHTML += i+"<br />";
}
(变量i=0;i<1000;i++)foo(i); ... 你的300行 功能foo(i){ document.body.innerHTML+=i+“
”; } 或

for(变量i=0;i<1000;i++){
document.body.innerHTML+=i+“
”; }

你可以用你喜欢的方式。声明的函数在内存中有固定的位置,因此可以从任何地方调用。如果它位于欧洲,你也可以从欧洲打电话给它。

有多远?我只是想知道…如果距离超过1000行,最好将函数移到函数调用附近。当然,这是为了支持IE。否则它对符合标准的浏览器中的函数调用没有影响。您的循环在美国,函数在欧洲吗?因为那太远了。我猜大概有300行。ThanksNo函数位置在行中并不重要。但是,如果函数在闭包级别方面远远不够。这可能会导致一些性能问题。但是,在大多数情况下,这仍然是可以忽略不计的。谢谢你真正回答了这个问题,包括欧洲的评论;)如果OP在欧洲就不会有问题了。。。电话是在工作时间后还是在工作时间内?哎呀,更不用说时区问题了。@icedwater当然是在工作时间。他的工作是在服务器打开之前一直使用服务器。这些脚本强制服务器关闭,以便它们可以休息一段时间。
for(var i = 0; i < 1000; i++) {
   document.body.innerHTML += i+"<br />";
}