JS中的JSON

本篇介绍JS中JSON数据的格式以及转换。

概述

  • json是 JavaScript Object Notation 的首字母缩写,单词的意思是javascript对象表示法,这里说的json指的是类似于javascript对象的一种数据格式。

  • json的作用:在不同的系统平台,或不同编程语言之间传递数据。

json数据的语法

json数据对象类似于JavaScript中的对象,但是它的键对应的值里面是没有函数方法的,值可以是普通变量,不支持undefined,值还可以是数组或者json对象。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// 原生的js的json对象
var obj = {
age:10,
sex: '女',
work:function(){
return "好好学习",
}
}

// json数据的数组格式:
["tom",18,"programmer"]
// 复杂的json格式数据可以包含对象和数组的写法。

{
"name":"小明",
"age":200,
"is_delete": false,
"fav":["code","eat","swim","read"],
"son":{
"name":"小小明",
"age":100,
"lve":["code","eat"]
}
}

总结:

1
2
3
4
5
6
7
8
9
10
11
12
13
1. json文件的后缀是.json
2. json文件一般保存一个单一的json数据
3. json数据的属性不能是方法或者undefined,属性值只能:数值[整数,小数,布尔值]、字符串、json和数组
4. json数据只使用双引号、每一个属性成员之间使用逗号隔开,并且最后一个成员没有逗号。
{
"name":"小明",
"age":200,
"fav":["code","eat","swim","read"],
"son":{
"name":"小小明",
"age":100
}
}

json数据转换方法

javascript提供了一个JSON对象来操作json数据的数据转换.

方法参数返回值描述
stringifyjson对象字符串json对象转成字符串
parse字符串json对象字符串格式的json数据转成json对象
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// json语法
let humen = {
"username":"xiaohui",
"password":"1234567",
"age":20
};

console.log(humen);
console.log(typeof humen);
console.log('-------------');

// JSON对象提供对json格式数据的转换功能
// stringify(json对象) # 用于把json转换成字符串
let result = JSON.stringify(humen);
console.log(result);
console.log(typeof result);
console.log('-------------');

// parse(字符串类型的json数据) # 用于把字符串转成json对象
let json_str = '{"password":"1123","age":20,"name":"xiaobai"}';
console.log(json_str);
console.log(typeof json_str);
console.log('-------------');

let json_obj = JSON.parse(json_str);
console.log(json_obj);
console.log(typeof json_obj);

console.log(json_obj.age)
</script>
</body>
</html>
-------------The End-------------

本文标题:JS中的JSON

文章作者:Naqin

发布时间:2019年06月20日 - 01:06

最后更新:2019年11月05日 - 01:11

原始链接:https://chennq.top/JavaScript/20190620-JavaScript_2.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

Naqin wechat
欢迎看官加我微信!
坚持原创技术分享,您的支持将鼓励我继续创作!
0%