Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.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 - Fatal编程技术网

调试一个简单的JavaScript代码

调试一个简单的JavaScript代码,javascript,Javascript,开始学习Javascript,我在FireFox的FireBug中写了如下内容: var myObject = { "first_name" : "Rick", "last_name" : "Hummer" }; var name; for (name in myObject) { if(typeof myObject[name] != 'function') { (name + ' : ' + myObject[name]) } } 当我运行它时,它只显示姓氏,它不也应该列出名字吗

开始学习Javascript,我在FireFox的FireBug中写了如下内容:

var myObject = {
"first_name" : "Rick",
"last_name" : "Hummer"
};

var name;
for (name in myObject) {
if(typeof myObject[name] != 'function') {
  (name + ' : ' + myObject[name])
}

}
当我运行它时,它只显示姓氏,它不也应该列出名字吗

另外,我如何设置断点并调试它呢


您有一个不做任何事情的语句,它生成一个字符串,但不使用它。调试器可能只是向您显示执行的最后一条语句

改变

(name + ' : ' + myObject[name])
致:


您应该会在日志中看到这两个键。

您没有告诉浏览器输出值

默认情况下,它写出最后执行的行的结果,即
(name+':'+myObject[name])

要解决此问题,只需添加
console.log

var myObject = {
"first_name" : "Rick",
"last_name" : "Hummer"
};

var name;
for (name in myObject) {
  if(typeof myObject[name] != 'function') {
    console.log(name + ' : ' + myObject[name]);
  }
}
适用于Firefox 19:

此外,对于调试,您只需在要放置断点的行中写入“debugger”(不带任何引号)。据我所知,所有浏览器都支持这种说法。

啊,我明白了。。。console.log。。。但是它很奇怪,现在它甚至没有显示任何东西。。你自己试试看:)它对我有用(FF 19.0.2)-请看我回答中的屏幕截图是的,对不起,我应该移回FireFox中的“全部”选项卡,我遇到了错误tabYpu可以添加断点并查看每一行执行
var myObject = {
"first_name" : "Rick",
"last_name" : "Hummer"
};

var name;
for (name in myObject) {
  if(typeof myObject[name] != 'function') {
    console.log(name + ' : ' + myObject[name]);
  }
}