八、json 数据格式

八、json 数据格式

JSON叫做JavaScript object NotationJavaScript 对象表示法”。

json是前端和后台通信的一种数据格式。

jsonjs对象表示法 k必须加双引号

1
2
3
4
{
“k” : v,
“k” : v
}

8.1 创建

1
2
3
4
5
6
7
8
// 创建json
var json = {
    "name" : "小明",
    "sex" : "男性",
    "age" : 18
}
// 数据类型是对象
console.log(typeof json); // object

8.2 读取 点语法 中括号

点语法 中括号

1
2
3
// 读取 点语法 中括号
console.log(json.name); // 小明
console.log(json["sex"]); // 男性

8.3 设置 =

1
2
3
// 设置 =
json.height = "180cm";
console.log(json);

UAsU2D.png

8.4 json删除 delete

1
2
3
// 删除 delete
delete json.sex;
console.log(json);

UAsBqA.png

8.5 json嵌套

json可以嵌套,读取属性值使用连续打点或者中括号

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var json = {
    "name" : "小明",
    "sex" : "男性",
    "age" : 18,
    "aihao" : {
        "aihao1" : "学习1",
        "aihao2" : "学习2",
        "aihao3" : "学习3"
    }
}

// json嵌套 读取
console.log(json);
console.log(json.aihao);
//连续打点
console.log(json.aihao.aihao2);

UAsgG8.png

8.6 json遍历

json没有序号,不能使用length遍历

1
2
3
4
// json 遍历k依次遍历属性名,通过json[k]读取每一项值
for(var k in json){
    console.log(json[k]);
}

UAsbGT.png

8.7 json复制

将json中每一项的值复制给另外的一份

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 创建json
var json = {
    "name" : "小明",
    "sex" : "男性",
    "age" : 18
}

// 表示将json地址指向json2,会互相影响
var json2 = json;
// 给json2添加一项
json2.height = 180;
console.log(json2);
// 验证json
console.log(json);

UAsXM4.png

1
2
3
4
5
6
7
8
9
10
11
// 只是将json中的值复制,而不是将地址也指向其他元素,不会互相影响
var json3 = {};
for(var k in json){
    json3[k] = json[k];
}
// json3和json是两个地址
// json3添加一项
json3.weight = "50kg";
console.log(json3);
// 验证 json不受json3影响
console.log(json);

UAySd1.png

点击查看

本文标题:八、json 数据格式

文章作者:Mango

发布时间:2020年07月08日 - 22:14:24

最后更新:2020年07月08日 - 22:35:39

原始链接:https://mango185.github.io/post/15026b64.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------------本文结束 感谢您的阅读-------------------