为什么相同的for循环不同的时间
Why different time for same for loop
我在Chrome控制台运行以下代码,并获得不同的执行时间。
我创建了两个具有相同主体的函数。第一个是函数声明,第二个是函数表达式。
var t= new Date().getTime();
function fun1(){
for( i=0; i < 1000000; i ++)
{
a=i;
};
};
fun1();
console.log(new Date().getTime() - t); // nearly 2ms;
t= new Date().getTime();
var fun2 = function (){
for(i=0; i < 1000000; i ++)
{
a=i;
};
};
fun2();
console.log(new Date().getTime() - t); //nearly 900ms
为什么相同的循环有不同的行为?
控制台代码在Google Chrome中使用语句包装在中。
function fun1() {
// code
}
fun1是声明的,它运行在和 block
之外var fun2 = function () {
//code
}
fun2是表达式,运行在V8下不可优化与块
表达式和声明在"non-console"模式下具有相同的性能:)
相关文章:
- 对于加载时间过长的循环来说是巨大的
- 如何优化这个jquery循环的执行时间
- 表单提交在一段时间循环PHP,jquery
- 使用循环打印时间列表
- javascript使用循环的打印时间
- 在for循环中另一个音频结束后播放一段时间的音频
- 如何在数组中循环,等待每个项目之间的时间
- Vanilla Js:在一个事件中开始一段时间的循环,然后用第二个事件打破它?('mouseover'启
- AngularJS:在长时间循环期间强制更新DOM(即进度指示器)
- 在执行时间循环中使用继续
- JavaScript:循环一段时间
- for 循环元素的执行时间比内部 AJAX 调用可以响应的要快
- 使用新值循环 2000 个元素的数组时,浏览器更新元素需要很长时间
- 运行一次函数(在一段时间循环中)
- 在 JavaScript 中,在循环中创建函数的具体原因是什么,可能会浪费计算时间
- 文件的上次修改时间 - 循环
- 在一段时间循环中刷新来自跳跃运动的帧
- 我真的不知道如何为这个JS函数创建时间循环
- 从选定的持续时间循环播放视频
- 一段时间循环中的 IF 语句不起作用,我哪里出错了