zoukankan      html  css  js  c++  java
  • 字符串转json

                //json转字符串
                var obj1 =  JSON.stringify(data);
                var obj2 =  JSON.stringify(data);
                console.log('json转字符串obj1:'+obj1);
                console.log('json转字符串obj2:'+obj2);
                //字符串转json
                var json1 = $.parseJSON(obj1);
                var json2 = JSON.parse(obj2);
           eval("("+student+")")
    例如:
    
    JSON字符串:
    var str1 = '{ "name": "cxh", "sex": "man" }'; 
    JSON对象:
    var str2 = { "name": "cxh", "sex": "man" };
    
    一、JSON字符串转换为JSON对象
    
    要使用上面的str1,必须使用下面的方法先转化为JSON对象:
    
    //由JSON字符串转换为JSON对象
    
    var obj = eval('(' + str + ')');
    
    或者
    
    var obj = str.parseJSON(); //由JSON字符串转换为JSON对象
    
    或者
    
    var obj = JSON.parse(str); //由JSON字符串转换为JSON对象
    
    然后,就可以这样读取:
    
    Alert(obj.name);
    
    Alert(obj.sex);
    
    特别注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)。
    前台传一个对象和一个json字符串,封装到一个对象中(参数)
    certificate.push(certificateArr);
    certificate.join(",");//注意格式
    var units = {"name":"certificate","age":"23"}
    //转为json字符串                           
     units = JSON.stringify(units);
    form为另外一个对象(与实体类一直)。
     var canshu = $.extend({},form,{units:units});
    //发送ajax
    $.post(url,canshu, function(res) {},'json')
    
     //后台接收,Pledge为实体类
     public void create(Pledge pledge,String units){
        ObjectMapper objectMapper = new ObjectMapper();
        //JavaType javaType = objectMapper.getTypeFactory().constructParametricType(List.class,UnionPledge.class);
        try {
          //List<UnionPledge> list = objectMapper.readValue(units,javaType);
    //json字符串转对象 UnionPledge readValue = objectMapper.readValue(units,UnionPledge.class); //certificate为所有数据数组 String[] certificate = readValue.getCertificate().split(","); } catch ( IOException e) { e.printStackTrace(); }
  • 相关阅读:
    redis
    Ubuntu 用VSFTP搭建FTP服务器
    ADO.NET中高效地使用数据库连接
    类型后面加问号 int?
    system.data.sqlclient.sqlexception:timeout expired
    BackgroundWorker超级详细的用法
    异步调用WCF服务,并将数据填入GridLookUpEdit中
    linq to entity报"不允许启动新事务,因为有其他线程正在该会话中运行."错误解决方法
    sql2005 数据库备份 对于服务器失败
    调用WCF服务返回list集合时出错的解决方法
  • 原文地址:https://www.cnblogs.com/gaomanito/p/8676984.html
Copyright © 2011-2022 走看看