JavaScript中和JSON比较类似的是Object对象。

  1. var obj = {
  2. d: function () {
  3. console.log("this is d");
  4. },
  5. a: 1,
  6. b: 2,
  7. c: 3,
  8. };

不同的是Object可以存储对象的方法,而JSON不行。

认识 JSON

那到底什么是JSON呢?
在所有的编程语言中都离不开三大数据类型,分别是:

  • scalar变量,字符串和数字
  • sequence序列,数组和列表
  • mapping映射,键值对

最早期都是用XML用来数据交互。(XML可以自定义标签,而HTML却不行,因为有规范)

  1. <person>
  2. <username>张三</username>
  3. <age>18</age>
  4. </person>

XML又存在缺点:

  1. XML文档比较大,当数据量大的时候,整个文档是非常大的
  2. 不易读
  3. 解析比较困难,性能也受到影响

所以就出现了JSON

JSON(JavaScript Object Notation)意为「对象表示法」。
JSON的存在是为了「数据交互」,所以不可能有方法,另外JSON是轻量级的数据交互格式。

使用JSON时需要注意:

  1. 键名一定要用双引号
  2. 映射用冒号隔开
  3. 映射集合用{}包裹

    1. {
    2. "name": "Bob",
    3. "age": 18
    4. }
  4. 并列数据用[]包裹

    1. [
    2. {
    3. "name": "Bob",
    4. "age": 18
    5. },
    6. {
    7. "name": "zhangsan",
    8. "age": 21
    9. }
    10. ]

JSON 的方法

JSON.parse()将字符串转为JSON

  1. var str = '{"name": "Bob", "age": 18}';
  2. JSON.parse(str); // JSON 数据

JSON.stringifyJSON数据转为字符串

  1. var json = {"name": "Bob", "age": 18};
  2. JSON.stringify(json); // 字符串