問題描述:在console.log中列印一個json物件時會顯示[object Object]
//清空控制臺輸出并將游標顯示在第一排
console.clear();
//定義一個json格式的物件
var j = {};
j.name = "小J";
j.sex = true;
j.age = 19;
//控制臺輸出
console.log("JSON物件:"+j);
console.log("JSON物件:"+JSON.stringify(j));
console.log(j);
console.log("JSON物件:%o",j);
控制臺顯示

需要先了解Console物件
Console 物件用于 JavaScript 除錯,JavaScript 原生中默認是沒有 Console 物件,這是宿主物件(也就是游覽器)提供的內置物件, 用于訪問除錯控制臺, 在不同的瀏覽器里效果可能不同,
console.log()方法可以簡單地傳遞一系列物件,這些物件的字串表示形式被串聯成一個字串,然后輸出到控制臺,(以Object.prototype.toString()的方法表示為字串)
正式因為console.log()在輸出多個物件的時候會以字串的形式串聯成一個字串輸出,所以會顯示為“JSON物件: [object Object]",
要想正確顯示一個json物件可以單獨列印,或者利用JSON.stringify()方法現將要列印的json物件格式化為字串,
當然console.log()支持字串替換,所以也可以用字串替換的方式
%o、%O:輸出一個JavaScript物件,在控制臺中可以打開有關物件的更多資訊,%后面是物件Object的首寫字母O
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/143015.html
標籤:JavaScript
