zoukankan      html  css  js  c++  java
  • JSON笔记整理

    JSON简介: 

       JSON: JavaScript Object Notation(JavaScript 对象表示法)

       JSON 是存储和交换文本信息的语法。类似 XML。

       JSON 比 XML 更小、更快,更易解析。

    一个简单的JSON实例:  

    {
        "student": [
        { "name":"张三" , "sex":"男" }, 
        { "name":"李四" , "sex":"男" }, 
        { "name":"王二麻子" , "sex":"女" }
        ]
    } 

     JSON语法

       JSON 语法是 JavaScript 对象表示法语法的子集。

    • 数据在名称/值对中
    • 数据由逗号分隔
    • 花括号保存对象
    • 方括号保存数组

       JSON 值可以是:

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

      JSON 对象在花括号中书写,对象可以包含多个名称/值对:

         一个例子:   

    {"name":"张三"}

        可以同过以下两种方法获取对象的值:

    var student,x;
    student={"name":"张三","sex":"M"}
    x=student["name"];//通过([""])
    x=student.sex;//通过(.)

    JSON 数组在方括号中书写,数组可包含多个对象:

       一个例子:

    {
    "student": [
        { "name":"张三" , "sex":"男" }, 
        { "name":"王二麻子" , "sex":"女" }
    ]
    } 
    //student是包含两个对象的数组。

       

       JSON 使用 JavaScript 语法,所以无需额外的软件就能处理 JavaScript 中的 JSON。通过 JavaScript,可以创建一个对象数组,并像这样进行赋值:

      

    var student= [
        { "name":"张三" , "sex":"男" }, 
        { "name":"李四" , "sex":"男" }, 
        { "name":"王二麻子" , "sex":"女" }
        ]

      访问数组的元素可以用下面方法:

    student[0].name;//返回张三
    student[1].sex="女";//修改数据

     JSON.parse() 

      JSON 通常用于与服务端交换数据。

      在接收服务器数据时一般是字符串。

      我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。

      JSON.parse()有两个参数,第一个是必须的有效的JSON字符串,第二个是可选的函数,会为每个对象成员调用这个函数。

      例如:

    var obj=JSON.parse('{"name":"李四","sex":"男"}')//这里注意传入的是字符串

     JSON.stringify() 

      JSON 通常用于与服务端交换数据。

      在向服务器发送数据时一般是字符串。

      我们可以使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串。

      同样,JSON.stringify()有三个参数,第一个必须的有效的JSON对象,第二个可选的用于转换结果的函数或者数组,第三个可选的文本添加缩进、空格和换行符,而如果是一个数字的话,则返回值文本在每个级别缩进指定数目的空格。如果 space 大于 10,则文本缩进10个空格。

    var student={"name":"张三","sex":"男"};
    var str=JSON.stringify(student);
    document.getElementById("01").innerHTML=str;

    eval() 函数

       eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误。

       

    var student='{"name","张三","sex":"M"}'
    var obj = eval ("(" + student + ")");
  • 相关阅读:
    VS2012 Unit Test(Void, Action, Func) —— 对无返回值、使用Action或Func作为参数、多重载的方法进行单元测试
    string中Insert与Format效率对比、String与List中Contains与IndexOf的效率对比
    VS2012 Unit Test —— 我对接口进行单元测试使用的技巧
    委托又给我惹麻烦了————记委托链的取消注册、获取返回值
    委托的N种写法,你喜欢哪种?
    VS2012 单元测试之泛型类(Generics Unit Test)
    Unity V3 初步使用 —— 为我的.NET项目从简单三层架构转到IOC做准备
    使用NuGet助您玩转代码生成数据————Entity Framework 之 Code First
    JqueryEasyUI浅谈---视频教程公布
    JqueryEasyUI浅谈本地化应用
  • 原文地址:https://www.cnblogs.com/fankailei/p/10044936.html
Copyright © 2011-2022 走看看