JSON

JSON是JavaScript Object Notation的缩写,它是一种数据交换格式。

在JSON中,一共就一下几种数据类型:

  • number:和JavaScript的 number完全一致;
  • boolean:就是JavaScript的truefalse
  • string:就是JavaScript的string
  • null:就是JavaScript的null
  • array:就是JavaScript的Array表示方式——[]
  • object:就是JavaScript的{ ... }表示方式。

上面的数据可以任意嵌套和组合。

由于JSON非常简单,很快就风靡Web世界,并且成为ECMA标准。几乎所有编程语言都有解析JSON的库,而在JavaScript中,我们可以直接使用JSON,因为JavaScript内置了JSON的解析。

把任何JavaScript对象变成JSON,就是把这个对象序列化成一个JSON格式的字符串,这样才能够通过网络传递给其他计算机。

如果我们收到一个JSON格式的字符串,只需要把它反序列化成一个JavaScript对象,就可以在JavaScript中直接使用这个对象了。

1,序列化

JSON序列化是指,将JavaScript中的对象转换为JSON格式的字符串。

例如我们在数据库中查询到了一个人的信息,需要把这个信息通过网络传递到前台的App进行显示,这时,我们需要将此对象进行JSON序列化,转换成JSON字符串才能进行传输。

const person = {
    name:'Tom',
    age:10,
    tel:'18612341234'
}

//JSON序列化使用JavaScript语言中自带的JSON解析器的stringify方法
const jsonData = JSON.stringify(person);
console.log(jsonData);//字符串:'{"name":"Tom","age":11,"tel":'1861234123'}'

2,反序列化

JSON反序列化也叫JSON解析。

拿到一个JSON格式的字符串,我们直接用JSON.parse()把它变成一个JavaScript对象。

一般来说,JSON格式的字符串都是通过网络请求获取

在此,我们为了测试JSON反序列化的功能,手写一个本地的JSON格式字符串。

const jsonData = '{"name":"Tom","age":11,"tel":18612341234}';
const person = JSON.parse(jsonData);
console.log(person.name);//结果为Tom

results matching ""

    No results matching ""