zoukankan      html  css  js  c++  java
  • json

    json(js对象符号)

    json: javascript  object  notation(js对象符号)

    其是一种数据交换格式,xml也是数据交换格式,json对比xml的生成和处理要更加方便。

    javascript里边json体现

    json在javascript里边就是字面量对象

    var obj = {名称:值,名称:值,名称:function(){}}

    通过php生成json信息

    json_encode(数组/对象)------------>生成json信息

    json_decode(json信息); 反编码json信息

    javascript接收处理json信息

    通过eval()把接收的json字符串变成真实的对象信息

    json最大的特点就是无刷新页面

    JSON 的语法规则十分简单,可称得上“优雅完美”,总结起来有:

     JSON 的语法规则是怎样的

    - 数组(Array)用方括号(“[]”)表示。

    - 对象(Object)用大括号(”{}”)表示。

    - 名称/值对(name/value)组合成数组和对象。

    - 名称(name)置于双引号中,值(value)有字符串、数值、布尔值、null、对象和数组。

    - 并列的数据之间用逗号(“,”)分隔

    对象(Object)

    对象用大括号(“{}”)括起来,大括号里是一系列的“名称/值对”,请看概念图。

     

    两个并列的数据之间用逗号(“,”)隔开,注意两点:

    - 使用英文的逗号(“,”),不要用中文的逗号(“,”)

    - 最后一个“名称/值对“之后不要加逗号

    数组(Array

    数组表示一系列有序的值,用方括号(“[]”)包围起来,并列的值之间用逗号分隔,

    名称/值对(Name/Value)

    名称(Name)是一个字符串,要用双引号括起来,不能用单引号,也不能没有引号,这一点与 JavaScript 不同。

    值的类型只有七种:字符串(string)、数值(number)、对象(object)、数组(array)、true、false、null。不能有这之外的类型,例如 undefined、函数等。

    字符串的概念图。

    数值的概念图。

    JSON 解析和生成

    1. eval()

    eval() 函数的参数是一个字符串,其作用是直接执行其中的 JavaScript 代码。

    eval() 能够解析 JSON 字符串。从这里也可以看得出,JSON 和 JavaScript 是高度嵌合的。

    但是,现在已经很少直接使用 eval() 来解析了,如果您的浏览器版本真的是很旧,可能才需要这个方法。此外,eval() 是一个相对危险的函数,因为字符串中可能含有未知因素。在这里,作为学习,还是要知道这也是一种方法。

    请注意 eval() 的参数,在字符串两旁加了括号,这是必须的,否则会报错。

    因为 JSON 字符串是被大括号(“{}”)包围的,直接放到 eval() 会被当成语句块来执行,因此要在两旁加上括号,使其变成表达式。

    2. JSON.parse()

    现在绝大多数浏览器都以支持 JSON.parse(),是推荐使用的方式。

    如果输入了不符合规范的字符串,会报错。

    JSON.parse() 可以有第二个参数,是一个函数。此函数有两个参数:name 和 value,分别代表名称和值。当传入一个 JSON 字符串后,JSON 的每一组名称/值对都要调用此函数。该函数有返回值,返回值将赋值给当前的名称(name)。

    利用第二个参数,可以在解析 JSON 字符串的同时对数据进行一些处理

  • 相关阅读:
    android使用广播退出应用程序
    Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW _TASK flag.
    Android获取屏幕尺寸大小
    onActivityResult不被执行的问题。
    ADB操作多台设备
    在Eclipse的DDMS中查看手机data文件夹中的内容
    JDK版本过高,导致Eclipse报错
    Android colors.xml
    Eclipse智能提示
    在配置IIS负载均衡时,引起的一系列问题
  • 原文地址:https://www.cnblogs.com/zuichumx0826/p/9052316.html
Copyright © 2011-2022 走看看