下面我们用对象直接量(字面量)的方法先创建一个对象Bookvar Book = {
title: "JavaScript 权威指南",
part1: {
title: "核心JavaScript",
pages: 11
},
part2: {
title: "客户端JavaScript",
pages: 352
},
BookOutline: BookOutline
}
function BookOutline(){
document.write("本书提纲:" + Book.title + "<blockquote>" +
"第一部分:" + Book.part1.title + "<br />" +
"第二部分:" + Book.part2.title) + "</blockquote>";
}
Book.BookOutline();接下来编写遍历对象属性的代码for(var i in Book){
if(typeof Book[i] != "object" && typeof Book[i] != "function"){
alert("Book" + "." + i + ": " + Book[i]);
}else{
for(var j in Book[i]){
alert("Book" + "." + i + "." + j + ": " + Book[i][j]);
}
}
}
如果有更多层的子对象,如何遍历呢?
title: "JavaScript 权威指南",
part1: {
title: "核心JavaScript",
pages: 11
},
part2: {
title: "客户端JavaScript",
pages: 352
},
BookOutline: BookOutline
}
function BookOutline(){
document.write("本书提纲:" + Book.title + "<blockquote>" +
"第一部分:" + Book.part1.title + "<br />" +
"第二部分:" + Book.part2.title) + "</blockquote>";
}
Book.BookOutline();接下来编写遍历对象属性的代码for(var i in Book){
if(typeof Book[i] != "object" && typeof Book[i] != "function"){
alert("Book" + "." + i + ": " + Book[i]);
}else{
for(var j in Book[i]){
alert("Book" + "." + i + "." + j + ": " + Book[i][j]);
}
}
}
如果有更多层的子对象,如何遍历呢?
for(var n in obj)
{
if(typeof obj[n] == "string" && n == "title")
{
titles += obj[n] + "<br>";
}
else if(typeof obj[n] == "object")
{
getTitle(obj[n]);
}
}
}getTitle(Book);