不同浏览器的控制台语句的执行顺序
Order of execution for console statements for different browsers
到目前为止,我已经在Firefox(32)和Chrome(38)中测试了以下代码
var startTime = (new Date()).getTime();
console.log(startTime);
var data = [];
var tCat = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("");
var dataPoints = 2000000;
for ( var i = 0; i < dataPoints; i++ ) {
var r = Math.random;
data.push({
value: Math.pow(1 - Math.cos((r() * Math.PI) / 2), 3),
cost: +r().toFixed(2),
category: tCat[Math.floor(r() * tCat.length)]
});
}
var endTime = (new Date()).getTime();
console.log(endTime);
console.log(endTime - startTime);
你可以在这个jsfiddle 上查看
在Firefox中,似乎所有三个控制台语句都同时启动,在循环完成执行之后,但在Chrome中,第一个控制台语句会在循环开始执行之前显示。代码本身按预期工作,但Firefox中第一个控制台语句的执行令人困惑。有人能解释一下吗?
TL;DR:控制台不受任何标准的管辖,并且依赖于浏览器。
它按预期工作尝试添加断点并逐步遍历代码中的每一行,您会看到它们按预期执行。一种更粗糙的方法是使用alert()
使脚本瘫痪。
然而,行为仍然取决于供应商。没有保证。
相关文章:
- javascript函数和代码隐藏函数的执行顺序
- Node.js:多个然后'It’执行顺序不正确
- 不同'单击'不同脚本中的回调:我可以控制执行顺序吗
- 代码混淆的执行顺序
- Javascript执行顺序错误
- Javascript执行顺序和回调
- 奇怪的javascript代码执行顺序
- for 循环/递归中的执行顺序
- JavaScript 中的执行顺序问题
- 来自函数 Javascript 的 NaN 返回值 ||函数执行顺序
- 控制承诺执行顺序
- 我可以信任 JavaScript 中声明中的执行顺序吗?
- 使用webcomponenetsjs的HTMLImports以意外的执行顺序加载导入-firefox
- 确保执行顺序:javascript
- Javascript代码的执行顺序
- 保证HTML表单提交和jQuery onclick的执行顺序
- 在ASP.Net中运行javascript时的执行顺序
- jQuery函数执行顺序
- Javascript中绑定到事件的函数的执行顺序
- 淘汰js可观察扩展的执行顺序是什么