我是 javascript 新手,正在使用简单的代码,但是当我在 firebug 中的指定代码下面编写此代码时,我得到了意外的值。 这是代码
var a=5;
while(a<10000){
if(a%1000==0)
console.log(a);
a++;
}
这是控制台中的输出
var a=5; while(a<10000){ if(a%1000==0) console.log(a); a++; }
1000
2000
3000
4000
5000
6000
7000
8000
9000
9999
最后它给了我“9999”,按照逻辑它不应该打印出来。
当我用 alert 替换 console.log 时,我收到了确切的输出。
我觉得这很简单,但我从未使用过firebug,我有点好奇为什么会发生这种情况?
最佳答案
你的问题是firebug总是打印最后一条语句的返回值。如果您将声明更改为:
var a=5; while(a<10000){ if(a%1000==0) console.log(a); a++; };null;
您将得到 null
而不是 9999
。 9999
是最后一个a++
的返回值。仅当您在控制台中输入代码时才会出现这种情况,因此您只需输入一个变量并打印它即可。
关于javascript - Firebug 的 console.log 使用 javaScript 打印意外值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37566229/