zoukankan      html  css  js  c++  java
  • json的新方法

    eval:可以解析任何字符串变成js

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

    parse():把字符串转成json

                 ---字符串中的属性要严格的加上引号

    stringify():把json转化成字符串

                   ----会自动把双引号加上

    还可以进行对象引用

    var a = {
            name:'hello'
        };
        var b = a;
        b.name = 'hi'
        console.log(a.name)//hi

    修改b的属性值的时候,a的属性值也会发生改变。

    解决方法:用for in 就不会存在对象引用关系了
      

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

    另一种写法:

      var a ={
            name:'hello'
        };
        var str = JSON.stringify(a);
        //得到一个新的对象
        var b = JSON.parse(str);
    
        b.name = 'hi'
        console.log(a.name)

    深层次的拷贝,可以利用递归(麻烦)
     另一种解决方法

    var a ={
            name:{age:100}
        };
        var str = JSON.stringify(a);
        //得到一个新的对象
        var b = JSON.parse(str);
    
        b.name.age = 'hi'
        console.log(a.name.age)
  • 相关阅读:
    [转]男人25岁之前应该懂得的21个道理
    family album U.S.A 05
    Humour
    Pretty Boy
    [转]男人本色.女人风韵
    电话英语
    搞不懂的女人
    family album U.S.A 03
    [转]The flame of love(爱的火焰)
    四季花开!
  • 原文地址:https://www.cnblogs.com/psxiao/p/11428358.html
Copyright © 2011-2022 走看看