我尝试进行调试,但遇到了问题。现在我尝试使用alert()
。例如,我希望看到以下值:
var product = { ProductName: $('!Answer_Response[0]').val(),
UnitPrice: $('#Price').val(),
Stock: $('#Stock').val()
};
当我说alert(product)
时,它只给了我[object Object]
。如何让警报显示真正存在的内容?
答案 0 :(得分:69)
您可以使用现代浏览器中的JSON.stringify()
方法,并由json2.js提供。
var myObj = {"myProp":"Hello"};
alert (JSON.stringify(myObj)); // alerts {"myProp":"Hello"};
或
答案 1 :(得分:11)
你可以像这样使用toSource方法
alert(product.toSource());
答案 2 :(得分:4)
如果您想在调试时轻松查看对象的内容,请安装Firebug之类的工具并使用console.log
:
console.log(product);
如果要查看对象本身的属性,请不要alert
对象,而是其属性:
alert(product.ProductName);
alert(product.UnitPrice);
// etc... (or combine them)
如上所述,如果你真的想要提高你的JavaScript调试,请使用Firefox和Firebug插件。你会想知道你以前是如何调试代码的。
答案 3 :(得分:2)
这就是我使用的:
var result = [];
for (var l in someObject){
if (someObject.hasOwnProperty(l){
result.push(l+': '+someObject[l]);
}
}
alert(result.join('\n'));
如果你想显示嵌套对象,可以使用递归的东西:
function alertObject(obj){
var result = [];
function traverse(obj){
for (var l in obj){
if (obj.hasOwnProperty(l)){
if (obj[l] instanceof Object){
result.push(l+'=>[object]');
traverse(obj[l]);
} else {
result.push(l+': '+obj[l]);
}
}
}
}
traverse(obj);
return result;
}
答案 4 :(得分:2)
您应该使用Firebug或Webkit的控制台进行调试。然后你可以做console.debug(product);
并检查对象。
答案 5 :(得分:1)
尝试一下:
alert(JSON.parse(product) );
答案 6 :(得分:0)
alert (product.UnitName + " " + product.UnitPrice + " " + product.Stock)
或者在对象上创建一个toString()方法并调用
alert(product.toString())
但是我必须同意其他海报 - 如果它正在调试你在IE9或Chrome上使用firebug或F12并且使用console.log是要走的路
答案 7 :(得分:0)
取决于您感兴趣的属性:
alert(product.ProductName);
alert(product.UnitPrice);
alert(product.Stock);
答案 8 :(得分:0)
alert( JSON.stringify(product) );
答案 9 :(得分:0)
使用Javascript原生JSON.stringify(obj,null, 4)
方法。要以更好的方式对其进行可视化,您可以使用,例如:var obj = {data:[{"empmenuid":"1","empid":null,"deptid":"66","aliasid":"66","firstname":"66","lastname":"66","sin":"66","status":"66","empclass":"66","hiredate":"66","seneoritydate":"66","separationdate":"66"},{"empmenuid":"3","empid":null,"deptid":"12","aliasid":"12","firstname":"12","lastname":"12","sin":"12","status":"12","empclass":"12","hiredate":"12","seneoritydate":"12","separationdate":"12","recalldate":"12","martialstatus":"12","gender":"12","pager":"12","locid":"12","jobtitle":"12","jobtitlestart":"12","fullpart":"12","manager":"12","managername":"12","middlename":"12","nickname":"12","paytype":"12","payfreq":"12"}],
recordType : 'object'};
alert(JSON.stringify(obj,null, 4));
sampleProject/android/build.gradle