ajax json 学习笔记

json = { }

JSON 字符串必须使用双引号,单引号会出现错误

三种类型:

      简单值:字符串、数值、布尔值、null

      对象:无序的键值对儿

      数组:有序的值列表

 

解析:JSON.eval()   //最早期   会执行恶意代码 不建议使用

    JSON.stringify();  // 转化成 json 对象

    JSON.parse();   // 转化成JS对象 object 

 解析 JSON  需要大写

 


//js对象
var book = {            
      title:"javascript",
    authoers:["taoqun"],
    edition:3,
    year:2016
}

// 解析成 JSON对象
var jsontext = JSON.stringify(book);

//jsontext 的值为:
{"title":"javascript","authoers":["taoqun"],"edition":3,"year":2016}

// 解析 javascript 对象 JSON对象才能解析
var parse_value = JSON.parse(jsontext);


试验:

  var s = {
    "ss":123,
    "asd":"asd",
    "dww":[123,123],
    "dfg":123
  }
  console.log(s);
  s = JSON.stringify(s);
  console.log(s);
  var a =JSON.parse(s);
  console.log(a);

输入结果:
Object {ss: 123, asd: "asd", dww: Array[2], dfg: 123} //js对象 键会去掉双引号
  {"ss":123,"asd":"asd","dww":[123,123],"dfg":123} //json对象
键会加上双引号
Object {ss: 123, asd: "asd", dww: Array[2], dfg: 123} //JS对象 键会去掉双引号



 

序列化选项:

  1、过滤结果

 数组 JSON.stringify( js对象 , [数组]  );  只返回包含数组对应属性的值;

 函数   JSON.stringify( js对象 ,  function( key ,value ) );函数接受两个参数 属性 和 属性值 或(键 和 键值)  //属性只能是字符串

 数组:

var book = {
       "title":"hello",
       "name":"taoqun",
       age:24,
       year:2016
}

var jsontext = JSON.stringify(book,["title","age"]);

// jsontext 的返回值

{"title":"hello","age":24}

函数:

var book = {
      "title":"hello",
       "name":"taoqun",
      age:24,
       year:2016,
      list:[1,2,34]
}

var jsontext = JSON.stringify(book,function(key,value){
          switch(key){
              case "list":
                  return value.join(",");
              case "year":
                  return 2017;
              case "name":
                  return "jay";
              default:
                  return value;
          }
})

console.log(jsontext);

// 返回值:

{"title":"hello","name":"jay","age":24,"year":2017,"list":"1,2,34"}

 

2、字符串缩进

var jsontext = JSON.stringify(book,null,4);
//返回值键值 缩进四个字符
var jsontext = JSON.stringify(book,null,"--");
//返回值键值 用"--" 显示缩进


 

3、toJSON() 方法

    优先返回toJSON 

  //待续

 

 

解析选项:

    JSON.parse(book,function(key,value){

})

 

 

 

 

 

 

posted @ 2016-06-04 22:45  taoquns  阅读(264)  评论(0编辑  收藏  举报