ajax用法和json格式了解
jQuery 调用 ajax 方法概述
ajax(异步 JavaScript 和 XML):
jQuery 可以通过 $.Ajax() 和 load(),$.get(),$.post(),$.getScript(),$.getJSON() 这些方法来使用 ajax。(注意下面提到的方法用,中括号括起来的参数,表示可选参数!)
$.load() 方法
1 | $("#id").load(url, [data], [callback]); |
url: 要请求的页面地址
data:要发送到服务器的 key/value 数据,没有指定传递方式默认为 get 方式
callback:请求完成时的回调函数(无论成败都调用),匿名函数定义如下:
1 | function(responseText, textStates, XMLHttpRequest){ |
$.get() 方法
1 | $("#btn").click(function(){ |
url: 要请求的页面地址(可以用 php 页面处理后台数据)
data:要发送到服务器的 key/value 数据,没有指定传递方式默认为 get 方式
callback:该回调函数只会在成功时调用,匿名函数定义如下
1 | function(data, textStatus){ |
type:服务器返回数据的格式(有 json,xml,text,html,script)
$.post() 方法
$.post() 的用法和 $.get() 类似,不再累述,但我们要知道 get 和 post 两种方式传递数据的区别
总结为四字口诀:数长可缓
1 | post get |
$.getScript( ) 方法
用于在需要的时候加载 JavaScript 文件
1 | $.getScript(url, callback); |
url:请求地址 (一般是 js 文件,文件里写 js 处理问题的函数)
callback:回调匿名函数(必选参数)
一个小栗子:
1 | $("button").click(function(){ |
$.getJson( ) 方法
用于在需要的时候加载 SON 文件
1 | $.getJSON(url, callback); |
url:请求地址
callback:回调匿名函数(必选参数),定义如下
1 | function(data){ // 遍历json数据 |
$.Ajax()方法
前面的方法都是基于此方法实现的,所以这个方法可以实现上面 4 个方法的所有功能。
1 | $.ajax({ |
对 JavaScript 与 JSON 的了解
描述 JSON 格式数据的语法采用了 JS 对象字面量的表示方法,但是不能把 JS 对象看做是 JSON,它们只是语法相似,和 XML 一样 JSON 只是一种存储数据的类型,不算编程语言。下面会具体对比它们。
完整的 JavaScript 实现
核心(ECMAScript)
文档对象模型(DOM)
浏览器对象模型(BOM)
JavaScript 数据类型
总共有六种类型,可以用 typeof 操作符检测类型,具体如下:
“undefined”——如果这个值未定义;
“boolean”——如果这个值是布尔值;
“string”——如果这个值是字符串;
“number”——如果这个值是数值;
“object”——如果这个值是对象或 null;
“function”——如果这个值是函数
for-in 遍历
用来枚举对象的属性(注意:对象的属性没有顺序)
1 | for (property in expression) statement |
小栗子:
1 | function a(obj){ |
JSON 数据格式
概述
JSON: JavaScript Object Notation(中文名:JavaScript 对象表示法),它和 JavaScript 对比如下:
1、JSON 中没有变量的概念,没有 (不用) 声明变量
2、没有末尾的分号
3、对象的属性必须加双引号
数据类型
与 JavaScript 对比:
1、简单值:使用与 JavaScript 相同的语法,可以在 JSON 中表示字符串、数值、布尔值和 null。
但 JSON 不支持 JavaScript 中的特殊值 undefined。
2、对象 {}:是一组无序的键值对
3、数组 []:表示一组有序的值的列表
下面是一个栗子:
1 | [ |
JSON 对象的方法
JSON 对象有两个方法:stringify() 和 parse()
1、把 JavaScript 对象序列化为 JSON 字符串(默认情况下,JSON.stringify() 输出的 JSON 字符串不包含任何空格字符或缩进)
2、把 JSON 字符串解析为原生 JavaScript 值
JSON 与 XML 的写法对比
json 栗子:
1 | {"employees":[ |
xml 栗子:
1 | <employees> |