• JavaScript--Json对象


    JSON(JavaScript Object  Notation)一种简单的数据格式,比xml更轻巧。JSON是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或工具包。
    JSON的规则很简单:对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’对”之间使用“,”(逗号)分隔。
       规则如下:
           1)映射用冒号(“:”)表示。名称:值
           2)并列的数据之间用逗号(“,”)分隔。名称1:值1,名称2:值2
           3) 映射的集合(对象)用大括号(“{}”)表示。{名称1:值1,名称2:值2}
           4) 并列数据的集合(数组)用方括号(“[]”)表示。
             [
               {名称1:值,名称2:值2},
               {名称1:值,名称2:值2}
             ]
          5  元素值可具有的类型:string, number, object, array, true, false, null

    在服务器端,可以手工拼接json字符串,也可以使用json接口来拼接json对象,然后在客户端进行解析显示

    1、在服务器端

      1、手动拼接字符串

         String json="[{'province':'湖北'},{'province':'河南'}]";
              out.println(json);

      2、使用接口拼接(需要导入json_lib.jar包)

        List<Person> list=new ArrayList<Person>();
             Person p1=new Person("1", "tom");
               Person p2=new Person("2", "mary");
               Person p3=new Person("3", "jack");
               list.add(p1);
               list.add(p2);
               list.add(p3);       
                JSONArray json=JSONArray.fromObject(list);//转化为json对象

          out.println(json.toString());//返回时仍旧是string类型

    2、在客户端对json对象进行解析

           var data=xhr.responseText;
                        var json=eval("("+data+")");
                        //alert(json.length);
                        for(var i=0;i< json.length;i++)
                        {
                            alert(json[i].id);
                        alert(json[i].name);
                        }

    /*
          * 利用eval()函数转换成json数据格式,传入eval()函数的内容还是文本内容
          *         * 利用eval()函数进行转换json数据格式,需要利用"()"将传入的参数进行包裹
          *             * 如果不利用"()"进行包裹,传入的内容是"{}",这时eval()函数会将其识别成"空的语句块"
          *             * 如果利用"()"进行包裹,传入的内容是"{}",这时eval()函数会强行将其转换成json格式
          *
          *         * 加上"()"一定转换成功

    */

    1 //使用json来定义函数
    2     var method = {
    3         add:function(a,b){
    4             return a+b;
    5         }
    6     }    
    7     
    8     method.add(3,4);
  • 相关阅读:
    一行Haskell语句打印勾股数
    给孩子增加学习生物的兴趣,买了个显微镜
    实现求n个随机数和为sum的haskell程序
    用haskell实现的八皇后程序
    桥牌笔记:第一墩决定成败
    读书笔记:父母离去前要做的55件事
    LINQ to SQL系列三 使用DeferredLoadingEnabled,DataLoadOption指定加载选项
    LINQ to SQL系列四 使用inner join,outer join
    Asp.Net 4.0 新特性 系列 之一 从页面标记<%%>说起
    使用javascript自动标记来自搜索结果页的关键字
  • 原文地址:https://www.cnblogs.com/liuwt365/p/4197931.html
Copyright © 2020-2023  润新知