the*_*Guy 5 html javascript key object innerhtml
我正在 Codecademy 上一门课程,他们的许多初学者课程都使用 console.log() 命令打印到控制台。然而,我想尝试使用document.GetElementById( ) 和innerHTML,但它不是打印出所选对象的详细信息,而是只打印“[object Object]”,而 console.log() 打印键的详细信息?
这是我的代码:
<div id="myfrndDetails"></div>
<script>
var frnds = new Object();
frnds.bill = {
firstName: "Bill",
lastName: "Gates",
phoneNumber: "8778787"
}
frnds.steve = {
firstName: "Bill",
lastName: "Gates",
phoneNumber: "8778787"
}
var frndCard = function(frndName,frndLst) {
for (var onefrnd in frndLst) {
if (frndLst[onefrnd].firstName === frndName) {
document.getElementById("myfrndDetails").innerHTML = frndLst[onefrnd];
return frndLst[onefrnd];
}
}
};
frndCard("Bill",frnds);
</script>
Run Code Online (Sandbox Code Playgroud)
但它不是打印出所选对象的详细信息,而是只打印“[object Object]”,
这是因为 frndLst[onefrnd] 是一个对象,它的toString方法将打印[object Object]。
使用JSON.stringify(frndLst[onefrnd])查看此对象的 JSON 表示形式
或者,替换这一行
document.getElementById("myfrndDetails").innerHTML = frndLst[onefrnd];
Run Code Online (Sandbox Code Playgroud)
经过
document.getElementById("myfrndDetails").innerHTML = "lastname - " + frndLst[onefrnd].lastName + " and phoneNumber " + frndLst[onefrnd].phoneNumber ;
Run Code Online (Sandbox Code Playgroud)