JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性
1.JSON對象
JSON 對象使用在大括号{}中書寫。對象可以包含多個 key/value(鍵/值) 對。
key 必須是字元串,value 可以是合法的 JSON 資料類型(字元串, 數字, 對象, 數組, 布爾值或 null)。key 和 value 中使用冒号(:)分割。每個 key/value 對使用逗号(,)分割。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>對象詳解</title>
</head>
<body>
<script>
// 對象采用鍵值對
var obj = {
"name" : "Alan_Lowe",
"age" : 20,
"gender" : "male"
}
// 通路
var x = obj.name;
var y = obj["age"];
document.write(x + " " + y);
</script>
</body>
</html>

2.循環對象
使用for-in可以通路對象的屬性,類似于C++STL的auto x : s
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>對象詳解</title>
</head>
<body>
<script>
// 對象采用鍵值對
var obj = {
"name" : "Alan_Lowe",
"age" : 20,
"gender" : "male"
}
// 循環對象,使用for-in
for(x in obj){
document.write(obj[x] + "<br>");
}
</script>
</body>
</html>
3.嵌套對象
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>對象詳解</title>
</head>
<body>
<script>
// 嵌套對象,即對象内放對象,和對象數組類似
var obj = {
"name" : "Alan_Lowe",
"age" : 20,
"gender" : "male",
"hobby" : {
"hobby1" : "籃球",
"hobby2" : "足球"
}
}
var x = obj.hobby["hobby1"];
document.write(x);
</script>
</body>
</html>
4.修改值
直接等号修改:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>對象詳解</title>
</head>
<body>
<script>
// 修改值對象屬性
var obj = {
"name" : "Alan_Lowe",
"age" : 20
}
obj["name"] = "Alan";
document.write(obj.name);
</script>
</body>
</html>
5.删除對象屬性
使用delete:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>對象詳解</title>
</head>
<body>
<script>
// 删除對象屬性
var obj = {
"name" : "Alan",
"age" : 20
}
for(x in obj){
document.write(obj[x] + " ");
}
document.write("<br>");
delete obj.name;
for(x in obj){
document.write(obj[x] + " ");
}
</script>
</body>
</html>