zoukankan      html  css  js  c++  java
  • JSON必知必会

    知识点比较杂,简单的以列表形式罗列知识点

    1.json是基于javascript对象字面量的,所以他们看起来很像。但是js对象字面量不需要给名称-值对中的名称两边加上双引号。而在JSON中,却是必要的。js中允许用单引号来代替双引号,但是json不允许用单引号来代替双引号。json的键名是必须要加双引号的,键值如果是字符串的话时必须要加双引号的,其他的类型可以不加。(字面量的意思是与其想要表达的意思是完全一致的值)

    2.在遇到双引号里面需要有双引号引住一句话或者是什么,可以使用转义字符来表示以免冲突造成错误。(在字符串中的双引号前面加一个反斜杠字符来对其转义)

    例如:{

    “promo”:"Say "Bob's the best!" at checkout"           //这样就不会出错了

    }

    其他的转义例子:

    (制表符)

    {

    "story":" Once upon a time."

    }   //这是错误的

    {

    "story":"\t Once upon a time."

    }    //这是正确的

    3.json文件使用.json扩展名

    4.JSON的媒体类型是application/json

    5.json中的null类型

    不要把null和undefined混淆,undefined不是JSON中的数据类型,在js中undefined是在尝试获取一些不存在的对象或者变量时返回的结果。null是表示“没有值”的值,在json中,null必须使用小写。(布尔值也要小写在json中);

    6.JSON验证器负责验证语法错误

    https://jsonformatter.curiousconcept.com/

    http://www.jsoneditoronline.org/

    http://jsonlint.com/

    7.JSON Schema    数据交换中的一种虚拟的“合同”,负责提供一致性检验主要包括几个方面

    {
           "$schema":"http://...", //声明的名称必须是$schema,值必须是所用草拟版本的链接
      "title":"Cat",
      "properties":{                      //properties的值实质上是我们想要的JSON的名称-值对的骨架
        "name":{
          "type":"string"
        },
        "age":{
          "type":"number",
          "description":"it is three years old."
        }
      },
      "required":[                      //必填的项要加在required中,比如现在的name是必填的,description没有写在下面表示不死必须填的

        "name"
      ]
    }

  • 相关阅读:
    2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践
    2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践
    2018-2019-2 20165206《网络对抗技术》Exp1 PC平台逆向破解
    css常见布局之三列布局--双飞翼布局和圣杯布局
    css常用布局
    基础总结(05)-- 回流和重绘
    基础总结(04)-- display:none;&&visibility:hidden;区别
    js实现点击按钮复制文本功能
    基础总结(03)-- css有趣的特性
    基础总结(02)--BFC(块级格式化上下文)
  • 原文地址:https://www.cnblogs.com/wanan-01/p/8110630.html
Copyright © 2011-2022 走看看