<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
//js对象
var stu ={"id":1,"name":"mike",'age':25};
console.log(stu)
//JSON格式的js对象
var data1 ={"id":1,"name":"mike","age":25};
//JSON字符串
var jsonStr=JSON.stringify(stu);
console.log(jsonStr);
//JSON格式的JS对象
var p=JSON.parse(jsonStr);
console.log(p);
</script>
<script>
//https://blog.csdn.net/weixin_38606332/article/details/80942127
//https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON
1.JSON 是一种语法,用来序列化对象、数组、数值、字符串、布尔值和 null 。
它基于 JavaScript 语法,但与之不同:JavaScript不是JSON,JSON也不是JavaScript。
2.JSON是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。
3.JSON以键值的形式;
{"key1":"value1","key2":"value2"};
a.键名必须用双引号
b.值只能是数值(10进制)、字符串(双引号)、
布尔值和null,数组或者符合JSON要求的对象,
不能是函数、NaN, Infinity, -Infinity和undefined;
c.最后一个属性后面不能有逗号;
d.前导0不能用,小数点后必须有数字;
4.JS对象
//js对象
var stu ={id:1,"name":"mike",'age':25};
a.键名可允许不加、加单引号、加双引号;
b.值没有限制;
c.最后一个属性后面允许有逗号;
//仅为JS对象
var p={};
//JSON格式的JS对象;
var stu ={"id":1,"name":"mike","age":25};
//JSON格式的JS字符串
var person='{"id":"001","name":"mk"}';
//JSON格式的JS数组
var people=[
{"id":"001","name":"mk"},
{"id":"001","name":"mk"}
];
5.JSON格式的JavaScript对象转JSON字符串
var data ={"id":1,"name":"mike","age":25};
var jsonStr=JSON.stringify(data);
console.log(jsonStr);
a.键名不是双引号的(包括没有引号或者是单引号),
会自动变成双引号;
字符串是单引号的, 会自动变成双引号
b.最后一个属性后面有逗号的,会被自动去掉
6.JSON字符串转换为JSON格式的JavaScript对象;
var p=JSON.parse(jsonStr);
console.log(p);
</script>
</body>
</html>