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 相关文章推荐
Javascript 学习书 推荐
Jun 13 Javascript
javascript 单例/单体模式(Singleton)
Apr 07 Javascript
javascript full screen 全屏显示页面元素的方法
Sep 27 Javascript
jQuery的css() 方法使用指南
May 03 Javascript
jQuery插件pagewalkthrough实现引导页效果
Jul 05 Javascript
使用JQuery FancyBox插件实现图片展示特效
Nov 16 Javascript
解决JavaScript数字精度丢失问题的方法
Dec 03 Javascript
JavaScript基础语法之js表达式
Jun 07 Javascript
JS常用函数和常用技巧小结
Oct 15 Javascript
AngularJS 购物车全选/取消全选功能的实现方法
Aug 14 Javascript
解决iview打包时UglifyJs报错的问题
Mar 07 Javascript
Javascript的this详解
Mar 23 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
Protoss兵种介绍
2020/03/14 星际争霸
查找mysql字段中固定字符串并替换的几个方法
2012/09/23 PHP
php中Snoopy类用法实例
2015/06/19 PHP
php调用淘宝开放API实现根据卖家昵称获取卖家店铺ID的方法
2015/07/29 PHP
PHP中explode函数和split函数的区别小结
2016/08/24 PHP
php微信开发之图片回复功能
2018/06/14 PHP
ext jquery 简单比较
2010/04/07 Javascript
使用jQuery清空file文件域的解决方案
2013/04/12 Javascript
探讨javascript是不是面向对象的语言
2013/11/21 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
2013/12/16 Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
2014/05/11 Javascript
深入探究JavaScript中for循环的效率问题及相关优化
2016/03/13 Javascript
聊一聊JavaScript作用域和作用域链
2016/05/03 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
2016/05/25 Javascript
jQuery版AJAX简易封装代码
2016/09/14 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
js实现随机抽选效果、随机抽选红色球效果
2017/01/13 Javascript
微信小程序实现分享朋友圈的图片功能示例
2019/01/18 Javascript
原生js实现获取form表单数据代码实例
2019/03/27 Javascript
详解elementui之el-image-viewer(图片查看器)
2019/08/30 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
[10:04]国际邀请赛采访专栏:DK.Farseer,mouz.Black^,采访员Josh专访
2013/08/05 DOTA
Django中login_required装饰器的深入介绍
2017/11/24 Python
50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)
2019/11/20 Python
Windows+Anaconda3+PyTorch+PyCharm的安装教程图文详解
2020/04/03 Python
python查看矩阵的行列号以及维数方式
2020/05/22 Python
pyecharts在数据可视化中的应用详解
2020/06/08 Python
如何以Winsows Service方式运行JupyterLab
2020/08/30 Python
基于Python爬取股票数据过程详解
2020/10/21 Python
西尔斯百货官网:Sears
2016/09/06 全球购物
物流管理系毕业生求职信
2014/06/03 职场文书
MySQL 存储过程的优缺点分析
2021/05/20 MySQL
总结Python常用的魔法方法
2021/05/25 Python
分享一些Java的常用工具
2021/06/11 Java/Android
nginx反向代理配置去除前缀案例教程
2021/07/26 Servers
Redis实现一个账号只能登录一个设备
2022/04/19 Redis