JSON基础

JSON基础-知识

json:
即 JavaScript Object Notation,另一种轻量级的文本数据交换格式,独立于语言

1. 语法规则

a) 数据在 名称/值 对 中
b) 数据由逗号分隔(最后一个健/值对不能带逗号)
c) 花括号保存对象,方括号保存数组
d) 名称和值都需要使用双引号包含

2. JSON解析

JSON数据在不同语言进行传输时,类型为字符串,不同的语言各自也都对应有解析方法,需要解析完成后才能读取
a) Javascript 解析方法
JSON.parse():从字符串解析出json对象
JSON.stringify():从json对象解析出字符串
JSON兼容处理json2.js
b) PHP解析方法
json_encode():对变量进行 JSON 编码,返回 value 值的 JSON 形式
json_decode():对 JSON 格式的字符串进行编码 ,它接受一个 JSON 格式的字符串并且把它转换为 PHP 变量
总结:JSON体积小、解析方便且高效,在实际开发成为首选

3. 兼容处理: IE5、IE6中不支持XMLHttpRequest

IE5、IE6中使用 ActiveObject(“Microsoft.XMLHTTP”);
var request;
if(XMLHttpRequest){
request=new XMLHttpRequest();
}
else{
request=new ActiveXObject(“Microsoft.XMLHTTP”);
}

4. 封装AJAX工具函数

封装ajax请求处理过程:
1.请求方式
2.请求地址
3.请求的参数,传递的数据
4.请求后的回调
不好的封装方式:
function ajax(type,url,data,success){
//这种写法不好,是因为参数固定,不方便后期的使用
}
使用对象做为参数:
1.优点:不再关注参数的顺序,方便参数类型和顺序的扩展
2.缺点:暴露在文件中,如果有新的功能需要添加,会产生麻烦,不方便扩展

5.jQuery中的ajax:jQuery为我们提供了更强大的Ajax封装

a) $.ajax({}) 可配置方式发起Ajax请求
b) $.get() 以GET方式发起Ajax请求
c) $.post() 以POST方式发起Ajax请求
d) $(‘form’).serialize() 序列化表单(即格式化key=val&key=val)
e) 参数说明:
 url :接口地址
 type :请求方式(get/post)
 timeout : 要求为Number类型的参数,设置请求超时时间(毫秒)
 dataType: 服务器返回格式
 data: 发送请求数据
 beforeSend: 要求为Function类型的参数,发送请求前可以修改XMLHttpRequest对象的函数,例如添加自定义HTTP头。在beforeSend中如果返回false可以取消本次ajax请求.
 success: 成功响应后调用
 error: 错误响应时调用
 complete: 响应完成时调用(包括成功和失败)

6.模板引擎

  1. 原理:其本质是利用正则表达式,替换模板当中预先定义好的标签
    //1.读取模板内容
    //2.获取数据-使用参数传递
    //3.使用正则进行替换,返回需要渲染的字符串
  2. 常用的模板引擎
    a) BaiduTemplate:http://tangram.baidu.com/BaiduTemplate/
    b) ArtTemplate:https://github.com/aui/artTemplate – 主要介绍
    c) velocity.js:https://github.com/shepherdwind/velocity.js/
    d) Handlebars:http://handlebarsjs.com/
  3. artTemplate的使用
    a) 1、引入template-native.js
    b) 2、<% 与 %> 符号包裹起来的语句则为模板的逻辑表达式
    c) 3、<%= content %>为输出表达式
-------------本文结束感谢您的阅读-------------