当前位置: 首页 > 工具软件 > parse5 > 使用案例 >

HTML5之JSON新方法 parse()和stringify()

文嘉禧
2023-12-01
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>JSON</title>

    <script type="text/javascript">

        // var str='function show(){alert(123)};'  //因为function在字符串里,所以不能有空格
        // eval(str);  //eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码eval(string),将字符串转化为JS
        // show();

        // var str='function show(){alert(123)}';
        // JSON.parse(str);//报错,function show(){alert(123)}不是json格式
        // show();

        // var str='{"name":"hello"}';//必须严格json形式,属性和值的双引号(不能是单引号)必须加
        //  var json=JSON.parse(str);
        //  alert(typeof(json.name));//string

        // var json='{name:"hello"}';
        // var str=JSON.stringify(json);
        // alert(str);//"{name:\"hello\"}",结果会自动加上引号

        // var a={name:"hello"};//此句后面不能加分号,会报错Unexpected token;
        // var b=a;
        // b.name="hi";
        // alert(a.name);//hi,原理对象引用

        // var a={name:"hello"};
        // var b={};
        // for(var attr in a){
        //  b[attr]=a[attr];
        // }
        // b.name='hi';
        // alert(a.name);   //hello

        // 新方法 parse()和stringity()的应用:深度克隆新的对象

        // var a={name:"hello"};
        // var str=JSON.stringify(a);
        // var b=JSON.parse(str);
        // b.name="hi";
        // alert(a.name);//hello

        // var a={name:{age:100}};
        // var str=JSON.stringify(a);
        // var b=JSON.parse(str);
        // b.name.age="hi";
        // alert(a.name.age);//100


    </script>
</head>
<body>

</body>
</html>
<!-- 
JSON的方法:
eval():能解析任何字符串变成json

parse():只能解析json形式的字符串变成json,安全性高一些 

stringify():json转换为字符串,解析的时候会自动加上引号
-->
 类似资料: