json属性名修改/js字符串相关操作

</pre>由于框架的问题,获取的json对象属性名是大写,比如Name,与java对象name不对应,所以需要转换为小写。<pre name="code" class="html">var model = $(gridName,currentObj).getRowDataByRowId(rowid);   //json对象
//遍历json对象的属性名 
for(var key in model){
//首字母为大写的转换,否则跳过
  if(/^[A-Z]/.test(key)){
          var lowerkey = key.toLowerCase();
          //对于带有字符的字段转换,如:CREATE_TIME转成createTime
          var location = lowerkey.indexOf("_" );
          if(location>0){
               var val = lowerkey.substring(location+1,location+2);
               lowerkey = lowerkey.replace(new RegExp("_"+val),val.toUpperCase());
          }
         //赋给新的属性名,删除旧的
         model[lowerkey] = model[key];
         delete model[key];
     }
}


主要用到 字符串对象的toLowerCase(),indexOf(),substring()以及replace()方法。

replace并不是替换原有的字符串,而是会返回一个新的字符串,这个新的才是所需要的。。,第一参数是正则表达式。

还有正则表达式对象 new RegExp("_"+val)或者直接定义:/_T/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值