一.JSON
1.对象的无序排列
var obj ={
d:function(){
console.log(this.a + this.b + this.c);
},
a: 1,
b: 2,
c: 3
}
obj.d(); /输出6
对象的无序排列:不管语句顺序如何对象里面都会执行
二.JSON
JSON:Javascript Object Nocation 即JavaScript对象标记 ,
其实就是一种JS的对象表达方式
JSON主要用来数据交互,特点:轻量。
JSON就是轻量级的数据交互格式
JSON里面不能存有方法,所以JSON一定是对象,但是对象不一定是JSON
素养知识:
所有变成语言都离不开的三大数据类型
1. scalar 标量 --> 字符串和数字
2.sequence 序列 --> 数组和列表 list array
3.mapping 映射 --> 键值对 键名 : 键值
JSON正是选用映射的方式来形成一个轻量级的数据结构
1.JSON规范
- 映射用冒号隔开 "name" : "jack"
- 并列数据用逗号隔开
{
"name" : "jack" ,
"age" : 18,
}
- 键名的集合用 { } 包裹
- 键名一定要用双引号(普通对象的键名打上双引号也不会出错)
- 并列数据集合用[]数组的形式包裹起来:
[
{
"name" : "jack" ,
"age" : 18,
},
{
"name" : "james" ,
}
] /这两个并列数据用[]包裹,用逗号隔开
2. JSON由来
早期用XML作为数据交互,但是XML数据文档很大,不易读,解析起来困难
3. JSON的方法
1. JSON.parse() --> 将JSON字符串转换成JSON对象
<div data-info='{"name":"jack","age":25}'></div> /在div里面传JSON,该键名必须打双引号
<script>
var oDiv = document.querySelector('div');
var info = oDiv.getAttribute('data-info');
var jsonData = JSON.parse(info); /将JSON字符串转换成JSON对象
console.log(jsonData);
</script>
在div里面传JSON,该键名必须打双引号
2.JSON.stringify() --> 将JSON对象转换成JSON字符串
<div></div>
<script>
var oDiv = document.querySelector('div');
var obj = {
name: 'jack',
age: 18
}
var str = JSON.stringify(obj); /将JSON对象转换成JSON字符串
console.log(str); /输出 {"name":"jack","age":18}
</script>