zoukankan      html  css  js  c++  java
  • js中 json对象的转化 JSON.parse()


    JSON.parse() 方法用来解析JSON字符串,json.parse()将字符串转成json对象
    构造由字符串描述的JavaScript值或对象。
    提供可选的reviver函数用以在返回之前对所得到的对象执行变换(操作)。


    var json = '{"result":true, "count":42}';
    obj = JSON.parse(json);

    console.log(obj.count);
    // expected output: 42

    console.log(obj.result);
    // expected output: true

    console.log(obj);
    //{ result: true, count: 42 }

    一.Json对象与Json字符串的转化

    1.jQuery插件支持的转换方式

    $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象

    2.浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器:

    JSON.stringify(obj)将JSON转为字符串。JSON.parse(string)将字符串转为JSON格式;

    var a={"name":"tom","sex":"男","age":"24"}; 
    var b='{"name":"Mike","sex":"女","age":"29"}'; 
    var aToStr=JSON.stringify(a); 
    var bToObj=JSON.parse(b); 
    alert(typeof(aToStr));  //string 
    alert(typeof(bToObj));//object

    3.Javascript支持的转换方式: 
    eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号 
    注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。

    4.JSON官方的转换方式: 
    http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法; 
    可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。

    二、JSON 字符串 与 java 对象的转换

    1. 把java 对象列表转换为json对象数组,并转为字符串

        JSONArray array = JSONArray.fromObject(list);
        String jsonstr = array.toString(); 

    2. 把java对象转换成json对象,并转化为字符串

      JSONObject object = JSONObject.fromObject(user);
      Log4jInit.ysulogger.debug(object.toString());

    3.Java中把JSON字符串转换为JAVA 对象数组
      

    JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串
      List<User> users= (List<User>)JSONArray.toCollection(json, User.class);


    4.Java中 把JSON字符串转换为JAVA 对象

      JSONObject jsonobject = JSONObject.fromObject(jsonStr);
      User user= (User)JSONObject.toBean(object,User.class);

     js中 

    要将JavaScript对象转换为JSON字符串,请调用JSON.stringify传递JavaScript对象。此函数返回JavaScript对象的JSON字符串表示形式。

    转换JSON字符串转换为JavaScript对象,使用JSON.parse函数,它只是解析JSON字符串并返回一个JavaScript对象

     

     

  • 相关阅读:
    笨方法学python中执行argv提示ValueError: not enough values to unpack (expected 4, got 1)
    VMware workstation安装
    Redis bigkey分析
    MySQL drop table 影响及过程
    MySQL 大表硬连接删除
    ES elasticsearch 各种查询
    ES elasticsearch 各种聚合
    ES elasticsearch 聚合统计
    ES elasticsearch 实现 count单字段,分组取前多少位,以地理位置中心进行统计
    MySQL行溢出、varchar最多能存多少字符
  • 原文地址:https://www.cnblogs.com/JonaLin/p/11352060.html
Copyright © 2011-2022 走看看