继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

JSON全接触

BluyeaSun
关注TA
已关注
手记 24
粉丝 77
获赞 3400

JSON基本概念

释义:
    JSON是存储和传递数据的语法,它采用键值对(下文解释)的方式来编写。
优点:
    易于人们的阅读和编写,同时也易于机器的解析和生成。
特点:
    只要按照JSON的规则,不管什么语言都可以使用JSON的形式,来存储数据。

JSON语法规则

实例:
    json = {
        "sex":"男",
        "age":80
    }
释义:
    "sex":"男"
       "sex" : 便是名称,也就是键
       "男"  : 值
格式

    名称/值对的组合中,名称写在前面(且都需要用在双引号中),中间用冒号隔开。

    若在一个json对象中,有多个键值对那么每个键值对之间用逗号隔开。

调用
    json对象名.名称

        json.sex
        便可获取到该键值对的值,“男”

JSON值类型

    数字(整数或浮点数) : 无需双引号
    字符串            : 在引号中
    逻辑值            : true 或 false 无需双引号
    数组              : []  无需双引号
    对象              : {}  无需双引号
    null              : 空值 无需双引号

实例
    jsonone = {
        "staff":[
                {"name":"小王","age":70},
                {"name":"赵五","age":80}
            ]
    }

    创建的jsonone对象中有一个键值对,该键值对的值是一个数组,
        数组里面有两个json对象.

    可以都过如下调用获取小王的年龄
    jsonone.staff[0].age

JSON解析

在JavaScript通过内建的函数便可以对JSON对象解析

JSON.parse() 方法

获取JSON字符串

    服务器与前端之间的通信常用字符串的形式

    var jsondata = '{"staff":[{"name":"小王","age":70},
                    {"name":"赵五","age":80}]}'

解析JSON字符串

    var jsontwo = JSON.parse(jsondata)

    jsontwo 可直接调用里面的键值对
        获取小王的年龄
        jsontwo.staff[0].age

eval() 方法

    较为复杂且比较危险,因为在解析json对象里面的数据时,
    该方法不检验里面的代码格式,若有恶意代码,也会被执行。

解析

    在json字符串外面还要加上"()"

    var jsonthree = eval('('+jsondata+')')

    jsonthree 可直接调用里面的键值对
        获取小王的年龄
        jsonthree.staff[0].age

JSON 格式化及检验

推荐: JSONlint

打开App,阅读手记
64人推荐
发表评论
随时随地看视频慕课网APP

热门评论

谢谢分享

thanks a ea

查看全部评论