关于JSON使用要注意的地方

1、json

    1.JSON对象;(ES5)
        1)JSON.stringify() json---js[json字符串--->JavaScript对象]
        2)JSON.parse() js---json【JavaScript对象--->json字符串】
    2.简写 
        1)(属性和值)名字一样可以简写 
        2)方法一样可以简写
    3.语法规则
        1)数据为 键/值 对
        2)数据由逗号分隔
        3)大括号保存对象
        {JSON 对象在大括号({})中书写,对象可以包含多个名称/值对}
        4)方括号保存数组 
        [JSON 数组在中括号中书写,数组可包含多个对象]
    4.JSON 值可以是:
        1)数字(整数或浮点数)
        2)字符串(在双引号中)
        3)逻辑值(true 或 false)
        4)数组(在中括号中)
        5)对象(在大括号中)
        6)null

2、json的标准写法:
    1.只能用双引号("");
    2.所有的(属性)名字只能用双引号("")包起来;
      如:
        {a:12, b:3, c:'aaa'}---》Wrong!
        {"a":12, "b":3, "c":'aaa'}---》Wrong!
        {"a":12, "b":3, "c":"aaa"}---》Yes!
    3.外面可以用单引号('')
     如:
       let str = '{"a":12, "b":3, "c":"aaa"}';

3、用例如下:

1. 把json变成js对象----JSON.stringify();
        let jsonObj = {a:12,b:3};
        let str = 'https://www.baidu.com/' + jsonObj;
        alert(str);
        // 输出:https://www.baidu.com/[object Object]
        
        let jsonObj = {a:12,b:3};
        let str = 'https://www.baidu.com/' + JSON.stringify(jsonObj);
        alert(str);
        // 输出:https://www.baidu.com/{"a":12,"b":3}
        // JSON.stringify() 将一个json对象转换成普通字符串; stringify 字符串化
        
        // 把字符串作为URI组件进行编码 encodeURIComponent
        let jsonObj = {a:12,b:3};
        let str = 'https://www.baidu.com/?data=' + encodeURIComponent(JSON.stringify(jsonObj));
        alert(str);
        // 输出:https://www.baidu.com/?data=%7B%22a%22%3A12%2C%22b%22%3A3%7D
2.把js对象变成json字符串----JSON.parse();
         /*
        注意:Wrong!
        let str = "{a:12, b:3, c:'bbb'}";
        let jsonObj = JSON.parse(str);
        console.log(jsonObj);
        // Wrong!
        */
        let str = '{"a":12, "b":3, "c":"bbb"}';
        let jsonObj = JSON.parse(str);
        console.log(jsonObj);
        // 输出:{a: 12, b: 3, c: "bbb"}

3.关于简写

        // (属性和值)名字一样可以简写!
        let a = 2, b = 3;
        // let json = {a:a, b:b, c:15};
        let json = {a, b, c:15};
        console.log(json);
        // 输出:{a: 2, b: 3, c: 15}
        // 2.方法一样可以简写
        let json = {
            a:12,
            // json中写方法:
            show(){
                alert(this.a);
            }
        };
原文地址:https://www.cnblogs.com/sylys/p/11646092.html