对象语法
实例
{ "name":"小镭", "age":10000, "site":null }
- JSON 对象使用在大括号({})中书写。
- 对象可以包含多个 key/value(键/值)对。
- key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。
- key 和 value 中使用冒号(:)分割。
- 每个 key/value 对使用逗号(,)分割。
访问对象值
(1)使用点号(.)来访问对象的值:
实例
var myObj, x;
myObj = { "name":"小镭", "age":10000, "site":null };
x = myObj.name;
(2)使用中括号([])来访问对象的值:
实例
var myObj, x;
myObj = { "name":"小镭", "age":10000, "site":null };
x = myObj["name"];
循环对象
使用 for-in 来循环对象的属性:
实例
var myObj = { "name":"小镭", "age":10000, "site":null };
for (x in myObj) {
document.getElementById("demo").innerHTML += x + "<br>";
}
在 for-in 循环对象的属性时,使用中括号([])来访问属性的值:
实例
var myObj = { "name":"小镭", "age":10000, "site":null };
for (x in myObj) {
document.getElementById("demo").innerHTML += myObj[x] + "<br>"; }
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>小镭学json</title>
</head>
<body>
<p>使用 for-in 来循环对象的属性:</p>
<p id="demo"></p>
<script>
var myObj = { "name":"小镭", "age":10000, "color":"blue","site":null };
for (x in myObj) {
document.getElementById("demo").innerHTML += x + "<br>";
document.getElementById("demo").innerHTML += myObj[x] + "<br>";
}
</script>
</body>
</html>
嵌套 JSON 对象
JSON 对象中可以包含另外一个 JSON 对象:
实例
myObj = { "name":"小镭", "age":10000, "sites": { "tall":"180", "food":"aggs", "color":"blue" } }
使用点号(.)或者中括号([])来访问嵌套的 JSON 对象。
实例
x = myObj.sites.tall;
x = myObj.sites["food"];
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>小镭学json</title>
</head>
<body>
<p>访问 JSON 内嵌对象。</p>
<p id="demo"></p>
<script>
myObj = {
"name":"小镭",
"age":10000,
"sites":{
"tall":"180",
"food":"aggs",
"color":"blue" }
}
document.getElementById("demo").innerHTML += myObj.sites.tall + "<br>";
document.getElementById("demo").innerHTML += myObj.sites["food"];
</script>
</body>
</html>
修改值
(1)使用点号(.)来修改 JSON 对象的值:
实例
myObj.sites.name = "小黑";
(2)使用中括号([])来修改 JSON 对象的值:
实例
myObj.sites["tall"] = "100";
删除对象属性
(1)使用 delete 关键字来删除 JSON 对象的属性:
实例
delete myObj.sites.name;
(2)使用中括号([])来删除 JSON 对象的属性:
实例
delete myObj.sites["name"]