您的位置:首页 > Web前端 > JavaScript

js的json、jsonp、ajax

2017-07-25 18:05 435 查看
json是一种轻量级的数据交换格式

json可以表示三种值

1.简单值:可以在json中表示字符串,数值,布尔值和null.

2对象:复杂数据类型.而每个键值对儿的值可以是简单值,也可以是杂数据类型.

3数组:数组是一种复杂的数据类型

JavaScript和json字符串最主要的区别就是json必须用双引号表示.

json中的对象和JavaScript中的对象

JavaScript对象:
var person= {
name:'nicholas',
age:29
};
var object = {
'name':'nicholas',
'age':29
};


json表示对象方法:
{
'name':'nicholas',
'age':29
}
{
'name':'nicholas',
'age':29,
'school':{
'name':'Merrimack College',
'location':'North Andover,Ma'
}
}


json中的数组:
[
{
'title':'hello world',
'authors':[
'Nc'
],
'edtior':3,
'year':2011
},
{
'title':'hello world',
'authors':[
'Nc'
],
'edtior':3,
'year':2011
},
]


json的解析:json数据格式解析为有用的JavaScript对象

早起json解析用JavaScript的eval()函数,但是其存在风险,JSON对象有两个方法:stringify()和parse()

var book= {
'title':'pro',
aut:[
'nick'
],
editor:3,
year:2011
};

json.stringify()把JavaScript对象转化为json字符串
var jsonText = JSON.stringify(book);
把json字符串直接传递给json.parse()可以得到JavaScript用的值

var bookCopy = JSON.parse(jsonText);
console.log(jsonText);
console.log(bookCopy);
console.log(bookCopy.title)


json.stringify()第一个参数是原对象,第二个参数是数组或者是对象,输出这个就会连属性一起输出出来

var book= {
'title':'pro',
aut:[
'nick'
],
editor:3,
year:2011
};

var jsonText = JSON.stringify(book,['title','editor']);
console.log(jsonText)


第三个参数是缩进和空白符

toJSON()的这个方法会返还自身的json数据格式

Ajax:AJAX 是一种用于创建快速动态网页的技术。AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术

ajax运用JavaScript操作DOM,运用XMLHttpRequest或新的Fetch API与网页服务器进行异步资料交换.

例子:http://jingyan.baidu.com/article/148a1921a482cf4d71c3b1c6.html

JSONP:是应用json的一种新方法,JSONP有两部分组成,回调函数和数据组成.回调函数的名字是在请求中指定的,而数据就是传入回调函数中的json数据,JSONP是通过动态创建
<script>
标签,通过src属性指定一个跨域的URL.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript ajax jsonp json