JSON.stringify JSON.parse

JSON.stringify能把json格式的对象变为字符串的格式,如

  var obj = {x:9,y:1}

  JSON.stringify(obj) -->"{x:9,y:1}"

  但是如属性的值为undefined ,则忽略,如果是NaN,Infinity,则变为null

  var obj = {val:undefined,a:NaN,b:Infinity,c:new Date()}

  JSON.stringify(obj) -->"{a:null,b:null,c:Mon Jun 06 2016 06:08:28 GMT+0800 (中国标准时间)}"

   复杂的json.stringify的情况,如下:

  var obj = {

      x:1,

      y:9,

      o:{

          o1:4,o2:5,toJSON:function(){return this.o1+this.o2} //如果有toJSON方法,在JSON.stringify时,会返回toJSON的结果,没有的话,按常规返回

      }

  }

  JSON.stringify(obj) -->"{x:1,y:9,o:9}"

JSON.parse()能把字符串变为json对象,字符串中的表示属性需用引号引起,如下文的“x”

var obj = JSON.parse('{"x" : 1}');
console.log(obj.x);

posted @ 2016-06-06 06:19  a fine day  阅读(161)  评论(0)    收藏  举报