只知道它是一段原生JS代码,具体能干嘛,怎么实现的不知道。
一种数据组织形式。
在js中通常以object对象的方式存在。
可以使用JSON.parse()解释这种数据格式,或者JSON.stringify()将object对象格式化成文本形式。
var obj = {
name: 'chenxiaoliang',
age: 18
}
问你一个问题,如果你在程序有一个对象,下次打开浏览器的时候你想使用它,那怎么办?当然是存起来,怎么存?直接写到txt里面?那这样对象结构就瓦解了,怎么办?用json格式,他能帮你存储结构信息
json是一种数据格式,前后端之间互相传递json数据。比如前端发起请求,调用接口,后端返回一串json数据,处理数据,渲染到页面上。
json就是一种数据组织格式,它和JS中的对象类似,但是格式更加严格。常用于web前后端数据交互中。
JSON是种数据格式,和Javascript没直接联系,JS原生提供了部分JSON操作方法。
http://www.json.org/json-zh.html官方文档
json是一种数据格式!和数组作用一样,用于存储数据。
比如对于一个人的个人信息,用数组可以这样存储
var tom = ['tom', '29', '170', 'man'];
如果约定好一个规则,我们可以用这样的数组保存tom的信息,分别是名字 = tom[0],年龄 = tom[1],身高 = [2],性别 = tom[3]
但是很显然这并不是很好的解决办法,我们普通情况下在用表格填充数据时都知道这样做更好
姓名 | 年龄 | 身高 | 性别 |
---|---|---|---|
tom | 29 | 170 | man |
jake | 22 | 175 | man |
因此有了json,使用key-value 的模式来更加直观存储数据
var tom = {
name: 'tom',
age: '29',
stature: 170,
gender: 'man'
}
访问属性的时候也很简单,在数组中我们使用序列index来访问具体值,而json中则使用key来访问value
比如访问年龄
var age = tom.age;
如果有很多人,就会使用数组与json组合的方式,这里用代码的方式来表达上面的表格内容
var data = [
{
name: 'tom',
age: '29',
stature: 170,
gender: 'man'
},
{
name: 'jake',
age: '22',
stature: 175,
gender: 'man'
}
]
在这个表中想要获得jake的身高
var jakeSta = data[1].stature
json模式的写法在ECMAScript中也叫做对象字面量,不仅仅可以单纯的存储值,还可以存储functon
var test = {
name: 'tom',
function: getName() {
return test.name;
}
}
是一串数据,里面就是存着在网络间传输的数据,由于除了有效的数据就是标点符号,所以容量很小,适合网络传递节省流量等。但是也由于只包含数据和标点符号,所以可读性没有xml那么强。