json对象及数组键值的深度大小写转换问题详解


Posted in Javascript onMarch 30, 2018

前言

最近在做一个项目,发现后端返回的数据键值全部都是大写的,有时候前端用起来很不方便,所以写了一个深度转换的小工具,分享给大家,也就不用重复造轮子了,不喜勿喷,下面话不多说了,来一起看看详细的介绍吧。

start

npm i deep-lu-trans --save

json example

import t from 'deep-lu-trans';
const obj = {
 AS_DD_S: 123213,
 AND_SAJ_JDK_JSAKD_: {
 DJK_ASJ: {
  SA_DSA_DSA: 123123,
  ASDA_SDH_KAS: {
  ASD_SAD: [{
   ASD_SAD_SA: 123123,
   III_ASDA: [1, 23, {
   ASD_SAD: 123
   }]
  }]
  }
 }
 },
 KIO: [{
 OP: 1,
 OOP: 2
 }, {
 OL: 1,
 OP: 2
 }]
};

t.objKeysToLower(obj).then((res) => {
 console.log(JSON.stringify(res));

});
t.objKeysToLower(obj).then((res) => {
 console.log(JSON.stringify(res));
 /*
 {"as_dd_s":123213,"and_saj_jdk_jsakd_":{"djk_asj":{"sa_dsa_dsa":123123,"asda_sdh_kas":{"asd_sad":[{"asd_sad_sa":123123,"iii_asda":[1,23,{"asd_sad":123}]}]}}},"kio":[{"op":1,"oop":2},{"ol":1,"op":2}]}
 */
 t.objKeysToUpper(res).then((_s) => {
 console.log(JSON.stringify(_s));
 /*
 {"AS_DD_S":123213,"AND_SAJ_JDK_JSAKD_":{"DJK_ASJ":{"SA_DSA_DSA":123123,"ASDA_SDH_KAS":{"ASD_SAD":[{"ASD_SAD_SA":123123,"III_ASDA":[1,23,{"ASD_SAD":123}]}]}}},"KIO":[{"OP":1,"OOP":2},{"OL":1,"OP":2}]}
  */
 });
});

array example

import t from 'deep-lu-trans';

const arr = [{
 A_B: 1,
 B_C: 2
}, 3, 4, 'abc', [{
 A_B: 1,
 B_C: {
 C_D: [0, {
  CK: 1,
  KL: 2
 }]
 }
}]]

t.arrKeysToLower(arr).then((res) => {
 console.log(JSON.stringify(res));
 /*
 [{"a_b":1,"b_c":2},3,4,"abc",[{"a_b":1,"b_c":{"c_d":[0,{"ck":1,"kl":2}]}}]]
 */
 t.arrKeysToUpper(res).then((_s) => {
 console.log(JSON.stringify(_s));
 [{"A_B":1,"B_C":2},3,4,"abc",[{"A_B":1,"B_C":{"C_D":[0,{"CK":1,"KL":2}]}}]]
 });
})

git地址:https://github.com/burning0xb/deep-lu-trans

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
解析Jquery的LigerUI如何实现文件上传
Jul 09 Javascript
JavaScript声明变量名的语法规则
Jul 10 Javascript
js绘制圆形和矩形的方法
Aug 05 Javascript
干货分享:让你分分钟学会javascript闭包
Dec 25 Javascript
jquery+json实现动态商品内容展示的方法
Jan 14 Javascript
javascript先序遍历DOM树的方法
Feb 27 Javascript
bootstrap布局中input输入框右侧图标点击功能
May 16 Javascript
JS使用cookie设置样式的方法
Jun 30 Javascript
JavaScript寄生组合式继承实例详解
Jan 06 Javascript
Vue.js实现开发购物车功能的方法详解
Feb 22 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
Aug 04 Javascript
Vue自定义多选组件使用详解
Sep 08 Javascript
Vue实现导出excel表格功能
Mar 30 #Javascript
理解 JavaScript EventEmitter
Mar 29 #Javascript
JavaScript EventEmitter 背后的秘密 完整版
Mar 29 #Javascript
vue的diff算法知识点总结
Mar 29 #Javascript
vue文件树组件使用详解
Mar 29 #Javascript
vue全局组件与局部组件使用方法详解
Mar 29 #Javascript
javascript实现文件拖拽事件
Mar 29 #Javascript
You might like
实用函数8
2007/11/08 PHP
Optimizer与Debugger兼容性问题的解决方法
2008/12/01 PHP
PHP获取windows登录用户名的方法
2014/06/24 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
IE与firefox下Dhtml的一些区别小结
2009/12/02 Javascript
JQuery select标签操作代码段
2010/05/16 Javascript
jQuery修改li下的样式以及li下的img的src的值的方法
2014/11/02 Javascript
在页面中输出当前客户端时间javascript实例代码
2016/03/02 Javascript
JS实现浏览器打印、打印预览示例
2017/02/28 Javascript
详解react-native-fs插件的使用以及遇到的坑
2017/09/12 Javascript
jquery实现倒计时小应用
2017/09/19 jQuery
使用validate.js实现表单数据提交前的验证方法
2018/09/04 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
python实现在目录中查找指定文件的方法
2014/11/11 Python
python中os操作文件及文件路径实例汇总
2015/01/15 Python
Python性能提升之延迟初始化
2016/12/04 Python
Python 遍历列表里面序号和值的方法(三种)
2017/02/17 Python
新手如何快速入门Python(菜鸟必看篇)
2017/06/10 Python
Python操作csv文件实例详解
2017/07/31 Python
Python字典推导式将cookie字符串转化为字典解析
2019/08/10 Python
django-filter和普通查询的例子
2019/08/12 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
2019/12/18 Python
Python3 ffmpeg视频转换工具使用方法解析
2020/08/10 Python
Python内存泄漏和内存溢出的解决方案
2020/09/26 Python
Python3 pyecharts生成Html文件柱状图及折线图代码实例
2020/09/29 Python
python 获取字典特定值对应的键的实现
2020/09/29 Python
CSS3实现3D翻书效果
2016/06/20 HTML / CSS
详解快速开发基于 HTML5 网络拓扑图应用
2018/01/08 HTML / CSS
中国第一家杂志折扣订阅网:杂志铺
2016/08/30 全球购物
美国第一香水网站:Perfume.com
2017/01/23 全球购物
英国最大的专业户外零售商:Mountain Warehouse
2018/06/06 全球购物
美术专业个人自我评价
2014/01/18 职场文书
2015年团支部年度工作总结
2015/05/27 职场文书
抖音短视频(douyin)去水印工具的实现代码
2021/03/30 Javascript
通过shell脚本对mysql的增删改查及my.cnf的配置
2021/07/07 MySQL
Java面试题冲刺第十七天--基础篇3
2021/08/07 面试题