JavaScript:输出对象的不同方法及实例

1,273 阅读2分钟

有时,在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

显示一个对象的键和值

对象提供了keysvalues 函数来打印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对象可以用多种方式进行迭代,你可以根据自己的需要进行选择,所有这些都可以在最新的浏览器上运行。