Javascript中Json字符串

ES6中的json字符串

  1. 拥有特殊格式的字符串

  2. 用于描述对象或者数组的字符串

【作用】:主要用于前后端交互。

JSON语法

  1. {}表示对象;

  2. []表示数组;

  3. 键与值之间用:分割;

  4. 属性之间用,分割;

  5. 属性名必须用双引号;

  6. 值可以是字符串,数字,布尔值,null,对象,数组,不能是NaN;

  7. 最后一个不能是逗号;

    JSON与对象之间的转换

  8. JSON字符串转转对象

    • Json.parse(字符串)会返回转换好的JS对象。

let a = `{"name":"zhangsang","age":20}`;
let d = JSON.parse(a)
console.log(d);

对象与JSON字符串转换

  1. JSON.stringify() 用于将一个值转为JSON字符串。

  2. 转换时,对象的函数会被过滤掉

//这个里面加载着函数。
let p = {name:"赵七",age:30,eat(){
    console.log("吃吃吃");
}};
//转换的时候会把对象中的函数过滤掉
let s = JSON.stringify(p)
console.log(s);
//结果如下
// '{"name":"赵七","age":30}'

浅拷贝

let p1 = {};
for (const key in p) {
    p1[key] = p[key];
}
console.log(p1);

深拷贝

  1.   深拷贝:可以先讲对象转为json字符串,再转回对象。
let p = {
    name: "芜湖大司马",
    age: 35,
    friend: [{
        name: "pdd",
        age: 30
    }, {
        name: "茄子",
        age: 30
    }]
};


//将对象转换为json字符串
let s = JSON.stringify(p);
//再将json字符串转换为对象,
let p1 = JSON.parse(s);
//就形成了深拷贝
console.log(p1);
//此时是不相等的
console.log(p1.friend == p.friend);

猜你喜欢

转载自blog.csdn.net/m0_60585777/article/details/121493177