Maison  >  Article  >  interface Web  >  Comment traiter les données json (exemple de code)

Comment traiter les données json (exemple de code)

不言
不言original
2018-09-17 15:49:291621parcourir

Le contenu de cet article explique comment traiter les données json (exemples de code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Si la valeur du nom est vide, elle est classée comme autre. Si la longueur du tableau est supérieure à 15, la partie dépassant 15 est classée comme autre

adata = {"resolution":{"540x960":3,"1080x1920":4,"1080x2160":2,"720x1080":1},
                "brand":{"":10},
                "version":{"5.1.1":2,"7.0":2,"5.0.2":2,"7.1.1":2,"8.0.0":1,"4.4.4":1,"5.1":2,"7.1":2,"5.5.2":2,"":2,"8.0.1":1,"4.4":1,"5.6":2,"9.0":2,"6.0.2":2,"":2,"8.3":1,"4.7":1,"4.2":2,"9.6":1,"7.8.0":2},
                "errorreason":{"":8,"APK Crash":2}};
                
getConfigData: function(category) {
      /*如果name值为空归为其它,如果数组长度大于15,超出15的部分归为其它*/
      let adata = [];
      for (let i in category) {
        let a = 0, bdata = [], bbdata = [];
        for (let key in category[i]) {
          if (key == '') {
            a += category[i][key]
            bbdata.push({name: '其它', y: a});
          } else {
            bdata.push({name: key, y: category[i][key]});
          }
        }
        if (bdata.length > 15) {
          let b = 0;
          bdata.slice(0, -15).forEach(function(item) {
            b += item.y;
          })
          bbdata[0].y = b + bbdata[0].y;
          bdata.splice(14,bdata.length-1,bbdata[0])
          adata.push(bdata)
        }else{
          adata.push(bdata.concat(bbdata))
        }
      }
      return adata;
    },
    
    getConfigData(adata);
.

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