1.json简介
正如我们在java中,使用实体对象来存储一个实体数据一样,在javaScript中,我们也需要这样一种对象,来存储一个实体数据。而且,此种对象将来也可以作为前端与服务器端进行数据交互的载体。
在json出现之前,大家都用 XML 传递数据。XML 是一种纯文本格式,所以适合在网络上交换数据,但是 XML 格式比较复杂,解析困难。终于道格拉斯•克罗克福特(Douglas Crockford)发明了JSON 这种超轻量级的数据交换格式。
JSON(JavaScript Object Notation)
- 是一种轻量级的数据交换格式。
- 易于人阅读和编写,同时也易于机器解析和生成。
- JSON采用完全独立于语言的文本格式。
2.json数据格式语法
json对象形式:对象中包含若干属性,属性以 ”键值对“ 的形式书写。
let user = {
userId:1,
userName:'张三',
userSex:'男'
}
console.log(user.userId);
console.log(user.userName);
console.log(user.userSex);
json数组形式:一个json数组中包含多个json对象。
let userArr = [
{
userId:1,
userName:'张三',
userSex:'男'
},{
userId:2,
userName:'李四',
userSex:'女'
},{
userId:3,
userName:'王五',
userSex:'男'
}
]
//获取json数组中某一个json对象
let user = userArr[0];
console.log(user.userId);
console.log(user.userName);
console.log(user.userSex);
//遍历json数组
for(let i=0;i<userArr.length;i++){
console.log(userArr[i].userId,userArr[i].userName,userArr[i].userSex);
}
3.json与字符串之间的转换
javaScript中内置了一个JSON对象,可以用来进行json与字符串之间的转换。
json转换成字符串:使用JSON.stringify()
let user = {
userId:1,
userName:'张三',
userSex:'男'
}
let str = JSON.stringify(user);
console.log(str); //{"userId":1,"userName":"张三","userSex":"男"}
let userArr = [
{
userId:1,
userName:'张三',
userSex:'男'
},{
userId:2,
userName:'李四',
userSex:'女'
},{
userId:3,
userName:'王五',
userSex:'男'
}
]
let str = JSON.stringify(userArr);
console.log(str); //[{"userId":1,"userName":"张三","userSex":"男"}, ... ]
字符串转换成json:使用JSON.parse()
let user = {
userId:1,
userName:'张三',
userSex:'男'
}
let str = JSON.stringify(user);
let new_user = JSON.parse(str);
console.log(new_user);