Maison  >  Article  >  interface Web  >  Explication détaillée du problème de conversion de casse profonde des objets json et des valeurs clés du tableau

Explication détaillée du problème de conversion de casse profonde des objets json et des valeurs clés du tableau

亚连
亚连original
2018-05-28 11:00:301196parcourir

Cet article vous présente principalement les informations pertinentes sur la conversion approfondie des cas d'objets json et des valeurs de clé de tableau. L'article le présente en détail à travers un exemple de code, qui a une certaine valeur d'apprentissage de référence pour l'étude ou le travail de chacun. qui en ont besoin, veuillez étudier ensemble ci-dessous.

Préface

Je travaillais récemment sur un projet et j'ai découvert que les valeurs de clé de données renvoyées par le backend sont toutes en majuscules, qui est parfois utilisé par le frontend, c'est très gênant, j'ai donc écrit un petit outil de conversion profonde à partager avec tout le monde, pour ne pas avoir à réinventer la roue. Si vous ne l'aimez pas, ne le critiquez pas. . Je ne dirai pas grand-chose ci-dessous, jetons un œil à l'introduction détaillée.

démarrer

npm i deep-lu-trans --save

json exemple

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}]}
  */
 });
});

exemple de tableau

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}]}}]]
 });
})

Ce qui précède est ce que j'ai compilé pour vous. J'espère que cela vous sera utile à l'avenir.

Articles connexes :

Exemple d'utilisation de mint-ui dans vue

remplacement de module à chaud webpack (HMR)/ Chaud méthode de mise à jour

Explication détaillée de Vue implémentant le rendu côté serveur basé sur Nuxt.js

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn