JavaScript学习笔记-JSON
It has been 1485 days since the last update, the content of the article may be outdated.
json
JSON是JavaScript Object Notation
的缩写,它是一种数据交换格式。
2002年,雅虎的高级架构师道格拉斯·克罗克福特(Douglas Crockford)发明了JSON
这种超轻量级的数据交换格式。
数据类型
number
:和JavaScript的number
完全一致;boolean
:就是JavaScript的true
或false
;string
:就是JavaScript的string
;null
:就是JavaScript的null
;array
:就是JavaScript的Array表示方式——[]
;object
:就是JavaScript的{ ... }
表示方式。
and …
- 字符集必须是
UTF-8
; JSON
的字符串规定必须用双引号""
,Object
的键也必须用双引号""
。
序列化
使用JSON.stringify()
方法。
把任何JavaScript对象变成JSON,就是把这个对象序列化成一个JSON格式的字符串,这样才能够通过网络传递给其他计算机。
javascript
var xm={ |
按缩进输出:
javascript
JSON.stringify(xm, null, ' ');//设置缩进 |
第二个参数用于控制如何筛选对象的键值,如果我们只想输出指定的属性,可以传入 Array
:
javascript
JSON.stringify(xm, ['name', 'skills'], ' ');//指定返回属性,默认null返回全部 |
javascript
function convert(key,value){ |
可以给xiaoming定义一个toJSON()的方法,直接返回JSON应该序列化的数据:
javascript
var xm={ |
反序列化
如果我们收到一个JSON格式的字符串,只需要把它反序列化成一个JavaScript对象,就可以在JavaScript中直接使用这个对象了。
拿到一个JSON格式的字符串,我们直接用JSON.parse()把它变成一个JavaScript对象:
javascript
JSON.parse('[1,2,3,true]'); // [1, 2, 3, true] |
javascript
var s='{"name": "XIAOMING","age": 14,"gender": "M","marriage": false,"grade": null,"skills": ["JS","CPP","NCL","PYTHON"]}' |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment