json对象及数组键值的深度大小写转换问题详解
更新时间:2018年03月30日 08:35:29 作者:burning0xb
这篇文章主要给大家介绍了关于json对象及数组键值的深度大小写转换问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
前言
最近在做一个项目,发现后端返回的数据键值全部都是大写的,有时候前端用起来很不方便,所以写了一个深度转换的小工具,分享给大家,也就不用重复造轮子了,不喜勿喷,下面话不多说了,来一起看看详细的介绍吧。
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
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
相关文章
nodejs redis 发布订阅机制封装实现方法及实例代码
这篇文章主要介绍了nodejs redis 发布订阅机制封装的相关资料,这里提供了实现方法,及实例代码,具有参考价值,需要的朋友可以参考下2016-12-12
node.js降低版本的方式详解(解决sass和node.js冲突问题)
这篇文章主要介绍了node.js降低版本的方式(解决sass和node.js冲突),本文是因为sass版本和node版本不匹配(可以找一下对应的版本),本文给大家详细讲解,需要的朋友可以参考下2023-02-02
解决Node.js包管理器安装报错npm ERR! code 1的问题
在开发过程中,我们经常需要使用各种Node.js包来扩展我们的应用程序功能,这些包通常通过npm(Node.js包管理器)进行安装和管理,有时候我们可能会遇到一些关于npm的错误,本文将详细介绍如何解决这个问题,并提供一个详细的实例,需要的朋友可以参考下2024-03-03
node.js中的fs.createWriteStream方法使用说明
这篇文章主要介绍了node.js中的fs.createWriteStream方法使用说明,本文介绍了fs.createWriteStream方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下2014-12-12


最新评论