Json.js 对象表示法 (K比较加双引号”” )
{
“K”:v,
“k”:v
}
说明: 一但加了大括号就是对象 比如 var liul{ }; 此时liul 就是对象

6.1 json创建

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

读取 对象

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

设置 =

  1. //设置 =
  2. json.nva="女";
  3. console.log(json["nva"]);//返回女 ,而且整个对象中也有这个参数

6.2 json删除

  1. //删除 delete
  2. delete json.sex;//含义 ,删除这个属性 男
  3. console.log(json);

6.3 json嵌套

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

  1. //创建json
  2. var json = {
  3. "name": "小明",
  4. "sex": "男性",
  5. "age": 15,
  6. "aihao":{
  7. "aihao1":"学习1",
  8. "aihao2":"学习2",
  9. "aihao3":"学习3"
  10. }
  11. };

读取 嵌套

  1. //json 嵌套
  2. console.log(json.aihao)

连续打点 解析: 指定查看爱好2 ,

  1. //连续打点
  2. console.log(json.aihao.aihao2);

6.4 json遍历

  1. //解析: 在json中不能使用正常的for循环语句,他是不输出的 因为json对象是无序的
  2. for(var i= 0;i<json.length;i++){
  3. console.log(json[i]);
  4. console.log(1);
  5. }
  6. //创建json
  7. var json = {
  8. "name": "小明",
  9. "sex": "男性",
  10. "age": 15,
  11. "aihao":{
  12. "aihao1":"学习1",
  13. "aihao2":"学习2",
  14. "aihao3":"学习3"
  15. }
  16. };
  17. //json 遍历K依次遍历属性名, 通过json[k]读取每一项值
  18. //K 是接受属性名
  19. for(var k in json){
  20. console.log(json[k]);//输出每一项的值
  21. }

原本自身输出是无序的
image.png
从头到位遍历出来数据 变成了有顺序的? 我的理解
image.png

6.5 json复制

对象保存的是地址

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

  1. //创建json
  2. var json = {
  3. "name": "小明",
  4. "sex": "男",
  5. "age": 18
  6. };
  7. //表示将json 地址指向json2 , 会互相影响
  8. console.log(json);
  9. var json2 = json;//将json 赋值到json2 保存
  10. //给json2添加 属性
  11. json2.height = 180;
  12. // json2.nvpengyou="有5个";
  13. console.log(json2);
  14. console.log("我是json2");
  15. //验证json
  16. console.log(json);
  17. console.log("被添加后的 json 已经有了json2 添加的属性,所以和json2 是一样的");
  18. //只是将json中的值复制, 而不是将地址指向其他元素
  19. var json3 = {};
  20. for (var k in json) {
  21. json3[k] = json[k];
  22. }
  23. //json3 和json 是两个地址
  24. json3.weight = "50kg"//json3 添加一项值
  25. console.log(json3);
  26. console.log("我是json3");
  27. console.log(json);
  28. console.log("我是json");

image.png