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){

})

 

ajax json 学习笔记的更多相关文章

  1. Ajax+JSON学习笔记(二)

    来源:http://www.imooc.com/learn/250 readyState属性 0:请求未初始化,open还没有调用 1:服务器连接已建立,open已经调用了 2:请求已接受,也就是接收 ...

  2. day64—ajax技术学习笔记

    转行学开发,代码100天——2018-05-19 Ajax技术学习笔记 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).AJA ...

  3. AJAX(学习笔记一)

    1:什么是AJAX? AJAX是一组英文单词的简写,这组英文单词是 :Asynchronous JavaScript and XML ,翻译成中文的意思是: 异步的JavaScript 和 XML.什 ...

  4. 20151211Jquery Ajax进阶学习笔记

    四.JSON 和 JSONP 如果在同一个域下,$.ajax()方法只要设置 dataType 属性即可加载 JSON 文件.而在非 同域下,可以使用 JSONP,但也是有条件的. //$.ajax( ...

  5. JSON 学习笔记

    学习使用json过程随笔: json数组格式 var employees = [ { "firstName":"Bill" , "lastName&q ...

  6. Json学习笔记

    一.昨天内容回顾 创建ajax对象 a) 主流浏览器  new  XMLHttpRequest(); b) IE浏览器  new ActiveXObject("Msxml2.XMLHTTP. ...

  7. Jquery+Ajax+php学习笔记

    昨天研究ajax,想作个登陆框,无刷新就把用户名密码提交给后台php程序,验证后发回. 几经琢磨 总算出来前台代码: <script src="./javascript/jquery- ...

  8. JSON学习笔记-1

    1.什么是JSON? JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一 ...

  9. javascript-ajax之json学习笔记

    ajax什么时候解析json的时候用eval 1.如果是原生js实现的ajax,就需要eval转json对象 如果使用了类似jquery的js插件,里面有些方法是不需要转的,因为jquery已经帮你处 ...

随机推荐

  1. Adaboost 算法的原理与推导——转载及修改完善

    <Adaboost算法的原理与推导>一文为他人所写,原文链接: http://blog.csdn.net/v_july_v/article/details/40718799 另外此文大部分 ...

  2. poj 1185 状态压缩

    炮兵阵地 Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 27926   Accepted: 10805 Descriptio ...

  3. bnuoj53075 外挂使用拒绝

    题目链接:http://www.bnuoj.com/v3/problem_show.php?pid=53075 第一次给校赛出题,来为自己的题目写一发题解吧. 其实我原本的题意非常简洁: 结果被另一位 ...

  4. [Java多线程]-Thread和Runable源码解析

    多线程:(百度百科借一波定义) 多线程(英语:multithreading),是指从软件或者硬件上实现多个线程并发执行的技术.具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提 ...

  5. 前端PHP入门-002-安装WAMP的集成环境md

    > 第一次讲PHP,让我感觉还是满好玩的,一种新的知识的学习,需要我们努力! > 这次PHP课程计划是15天快速入门的课程! 只是单独的讲PHP语言,不涉及很深的内容,只是想让web前端的 ...

  6. tf.train.batch的偶尔乱序问题

    tf.train.batch的偶尔乱序问题 觉得有用的话,欢迎一起讨论相互学习~Follow Me tf.train.batch的偶尔乱序问题 我们在通过tf.Reader读取文件后,都需要用batc ...

  7. [洛谷P4609] [FJOI2016]建筑师

    洛谷题目链接:[FJOI2016]建筑师 题目描述 小 Z 是一个很有名的建筑师,有一天他接到了一个很奇怪的任务:在数轴上建 \(n\) 个建筑,每个建筑的高度是 \(1\) 到 \(n\) 之间的一 ...

  8. Flexbox兼容性

    .flex-container{ display: -webkit-box; /* Chrome 4+, Safari 3.1, iOS Safari 3.2+ */ display: -moz-bo ...

  9. oozie与hive的简单案例

    1.把oozie中自带的hive案例拷贝到 测试目录 /opt/cdh-5.3.6/oozie-4.0.0-cdh5.3.6/oozie-apps下 2. 编辑 job.properties # # ...

  10. D - Keiichi Tsuchiya the Drift King Gym - 102028D (几何)

    题目链接:https://cn.vjudge.net/contest/275150#problem/D 题目大意: 问你能满足那个矩形可以顺利通过的条件,然后求出最小的w 具体思路:首先,我们应该将情 ...