zoukankan      html  css  js  c++  java
  • JSON的新方法--parse()和stringify()

    // eval 可以解析任何字符串变成js 
            var str = 'function show() {console.log(1)}';
            eval(str);
            show();    //    1
    // parse 只能解析JSON形式的字符串变成js
            var str = 'function show() {console.log(1)}';
            JSON.parse(str);    //报错
            show();
    // parse() 把字符串转成json--字符串中的属性要严格的加上引号
            var str = '{name:"hello"}';
            var json = JSON.parse(str);    //报错
            console.log(json.name);    
    var str = '{"name":"hello"}';
            var json = JSON.parse(str);    
            console.log(json.name);        // hello
    // stringify() 把json转化成字符串--会自动的把双引号加上
            var json = {name:'hello'};
            var str = JSON.stringify(json);
            console.log(str);    // {"name":"hello"}
    // 深度克隆对象
            var a = {
                name: 'hello'
            }
            var b = a;
            var c = {};
            for (var attr in a) {
                c[attr] = a[attr];
            }
            b.name = 'hi';
            console.log(a.name);    // hi b.name的修改影响了a
            console.log(c.name);    // hello for in实现了浅拷贝
    
            // 深拷贝
            var d = {
                name: 'hello',
                person: {age: 18}
            }
            var str = JSON.stringify(d);
            var e = JSON.parse(str);
            e.person.age = 20;
            console.log(d);    // // {name: "hello", person: {age: 18}}
            console.log(e);    // {name: "hello", person: {age: 20}}

    parse()和stringify() 其他浏览器做到兼容-http://www.json.org/去下载json2.js 

  • 相关阅读:
    HDOJ.1263
    另一种跳转actvity方式
    [转]Android中用Java获取时间实例
    获得当前时间的方法
    3d动画切换
    登录跳转效果
    activity 成popupwindow效果
    自定义preference的使用等等
    edittext输入框的背景效果
    自定义ListPreference
  • 原文地址:https://www.cnblogs.com/jianglibaizhi/p/10579402.html
Copyright © 2011-2022 走看看