有时,在JavaScript应用程序的开发过程中,我们想调试并在控制台中显示JavaScript对象。
对象包含列举的键和用括号括起来的值。
例如,对象包含以下内容
下面的对象包含键和值,以及嵌套的子对象
var obj = {id:1,name:"John",salary:"5000",department:{id:1,name:"sales"}};
console.log用于打印JavaScript对象
控制台对象有log函数,可以打印一个对象或任何javascript变量。
console.log("employee Object :"+obj);
这将以字符串的形式打印出对象的元数据。然而,这对于调试和了解对象的内容值是没有用的。
employee Object :[object Object]
如果你在log函数中加入逗号(,),它将以json格式打印对象。
console.log("employee object json",obj);
输出:
{
id:1,
name:"John",
salary:"5000",
department: {
id:1,
name:"sales"
}
}
你也可以使用console.dir 来显示JavaScript对象的交互式列表。这样就可以扩展
console.dir("employee Object :"+obj);
console.dir("employee object json",obj);
如何以json格式显示javascript对象
JSON.stringify 该函数用于以json格式打印javascript对象。
这将显示一个javascript对象的stringify 版本。
console.dir(obj);
console.dir(typeof obj); // object
let jsonObj=JSON.stringify(obj)
console.dir(jsonObj);
console.dir(typeof jsonObj); //string
输出
{
id:1,
name:"John",
salary:"5000",
department: {...}
}
object
{"id":1,"name":"John","salary":"5000","department":{"id":1,"name":"sales"}}
string
显示一个对象的键和值
对象提供了keys 和values 函数来打印javascript对象的键和值。
console.log(Object.keys(obj));
console.log(Object.values(obj));
输出
["id","name","salary","department"]
(4) [1,"John","5000",{id:1,name:"sales"}]
使用for循环打印一个对象
这是使用对象的for循环的标准方法
使用for循环遍历一个对象,并使用console.log语句打印键和值。
for (var item in obj){
console.log(obj[item], item);
}
输出
for (var item in obj){
console.log(obj[item],item);
}
输出
1 id
Johnname
5000salary
{
id:1,
name:"sales"
}
department
结论
总而言之,Javascript对象可以用多种方式进行迭代,你可以根据自己的需要进行选择,所有这些都可以在最新的浏览器上运行。