• js中多层复杂并且动态键值JSON的获取方法


    开发中遇到了用js解析重新组装json数据的要求,关键点在于JSON中的串的键是动态的,多方查找解决了在此做个记录。同时我也深感js中循环的无赖,如果用i作为键会得到索引,用key作为循环变量竟然可以得到key,不太理解这种设计,暂且记录下来吧。

     var jsonObj =JSON.parse(data.json);
                	   console.log("payProductMap是:"+JSON.stringify(jsonObj.payProductMap));
                	   var payProductMapJson = jsonObj.payProductMap;
                	   var resultJson = {};
                	   for (var key in payProductMapJson)
                	    {
                	        //alert("第一层:"+key); 	
                			//alert("第一层:"+payProductMapJson[key]);	
                			resultJson.payProductName = key;
            				resultJson.dsPayBankMap = JSON.stringify(payProductMapJson[key]);
                			console.log("第一个JSON对象是:"+JSON.stringify(payProductMapJson));
                			break;
                	    }
    

    其中,关于json的格式说明如下(支付产品名称是根据页面选择生成的,也就是说JSON串中产品名称不是固定的,这个时候要再页面重新组装数据):

    
    "{"payProductMap":{"ONE_KEY_PAY_DEBIT":{"dsPayBankMap":{"BANK_PAY_WAP":{"rateType":"PERCENTAGE","rate":"5"}}}},"payScenarioMap":{"H5_ACCESS":{"webUrl":"127.0.0.1"},"ZF_SHH_ZFB":{}}}"
    
    
  • 相关阅读:
    oracle 将表名和字段名变为大写
    第三方应用软件提权
    数据库提权
    mybatis spring代理开发
    mybatis整合spring原始dao开发
    mybatis和spring整合的jar包准备
    mybatis整合ehcache(分布式缓存框架)
    mybatis 查询缓存
    mybatis 延迟加载
    mybatis 高级映射
  • 原文地址:https://www.cnblogs.com/jpfss/p/9698151.html
Copyright © 2020-2023  润新知