美文网首页Web
JavaScript - JSON

JavaScript - JSON

作者: FoxLayla | 来源:发表于2019-02-17 23:14 被阅读15次

    JSON

    JSON(JavaScript Object Notation)是一种 轻量级数据交换格式,用来序列化对象、数组、数值、字符串、布尔值和 null

    特点

    • JSON 是纯文本
    • JSON 具有“自我描述性”(人类可读)
    • JSON 具有层级结构(值中存在值)
    • JSON 可通过 JavaScript 进行解析
    • JSON 数据可使用 AJAX 进行传输

    语法

    JSON 是键值对的集合,其基本形式为:

    • 数据在名称/值对中
    • 数据由逗号分隔
    • 花括号保存对象
    • 方括号保存数组
    {
        "key1": "value1",
        "key2": "value2",
        "key3": "value3"
    }
    /* 注:
    1. 最后一个键值对后面没有逗号
    2. 键和值均用 "" 括起来 */
    

    JSON 值可以是:

    • 数字(整数或浮点数)
    • 字符串(在双引号中)
    • 逻辑值(true 或 false)
    • 数组(在方括号中)
    • 对象(在花括号中)
    • null

    是否是 JSON 字符串取决于上下文,在string上下文里使用带有大括号的 JavaScript 对象,那它就是 JSON 字符串,而如果在对象字面量上下文里使用的话,那它就是对象字面量。

    // 这是JSON字符串
    var foo = '{ "prop": "val" }';
     
    // 这是对象字面量
    var bar = { "prop": "val" };
    

    方法

    • JSON.parse():解析 JSON 字符串并返回对应的值。

    • JSON.stringify():返回与指定值对应的 JSON 。

    JSON 和 JavaScript 的关系

    JSON 基于JavaScript 语法,但 JavaScript不是JSON,JSON也不是 JavaScript。

    • JSON 最后一个键值对后面不能加逗号
    • JSON 的键和值均须用""括起来
    • 任何 JSON 文本都是有效的 JavaScript 表达式——但仅限于已实施 ECMA-262 的 JavaScript 引擎。JSON 中的字符串文字和属性键允许使用 U + 2028 LINE SEPARATOR 和 U + 2029 PARAGRAPH SEPARATOR,但在尚未实施 ECMA-262 的引擎中,会报语法错误。

    相关文章

      网友评论

        本文标题:JavaScript - JSON

        本文链接:https://www.haomeiwen.com/subject/dkxoeqtx.html