嵌套JSON數組對象,判斷裏面某個值屈改變內容

常常遇到數據嵌套和數據處理,舉個例子:javascript

json = [java

     {"name":zhangsan,"id":111,"sex":1,"time":2020/12/15,},json

     {"name":李四,"id":222,"sex":0,"time":1900/1/1,},函數

    {"name":王五,"id":333,"sex":1,"time":1900/1/1,},this

         ],code

收到以上這個數據格式,而後想判斷sex=0就顯示爲女,sex=1就顯示爲男;無論白貓黑貓,能構建處理就是好貓對象

就是重寫拆分構建:遞歸

//定義新容器
var newJson=[];
ver newSex;

//循環替換對象
 for(var i=0;i<json.length;i++){ //判斷原json裏面的長度,進行循環修改
    //這就判斷替換值咯
    if(json[i].sex == 0){
              newSex= "女"
      }else{
              newSex= "男" 
       }
      newJson.push(
                {"name":json[i].name,"id":json[i].id,"sex":newSex,"time":json[i].time,}
         );
  }

適用於js和VUEip

 

應該還有更簡單的方法,好比spit()等函數,直接就能夠,不用寫這麼多行代碼。上面這種方法能夠構建樹或者其餘更簡單get

json = [

  

 {"name":張三,"id":111,"sex":1,"time":2020/12/15,

         "childInfo":{ 

               "name":張三人,"id":111,"sex":1,"time":2020/12/15,"childInfo":null

           }

  },

     {"name":李四,"id":222,"sex":0,"time":1900/1/1,"childInfo":null

          

           "childInfo":{ 

               "name":張三啊,"id":111,"sex":1,"time":2020/12/15,"childInfo":null

              }

  },

    {"name":王五,"id":333,"sex":1,"time":1900/1/1,"childInfo":null},

],

相似這種嵌套,而後你想變成這種格式:

JSON = [

    {"name":張三,"id":333,"sex":1,"time":1900/1/1,"childInfo":null},

     {"name":張三人,"id":333,"sex":1,"time":1900/1/1,"childInfo":null},

    {"name":李四,"id":333,"sex":1,"time":1900/1/1,"childInfo":null},

   {"name":張三啊,"id":333,"sex":1,"time":1900/1/1,"childInfo":null},

   {"name":王五,"id":333,"sex":1,"time":1900/1/1,"childInfo":null},

],

那就作個遞歸循環屈解決,每一個都拆分,VUE的大概寫法,JS也是如此類型。這就是構造新的結構(雖然辦法傻了點)

getjson(e){//tree置換【{},{}】的JSON方法
             value;//數據來源
            var NewJSON = [];
            var i ;
        	e.map((cuttentDate ) => {
        		this.NewJSON.push( {"name":value.name,"id":value.id,"sex":value.sex,"time":value.,"childInfo":value.childInfo},);
        	    cuttentDate.childInfo!=null && cuttentDate.childInfo.length >0 ? this.getjson(cuttentDate.childInfo,cuttentDate.id) : "";
            })
            
        },
相關文章
相關標籤/搜索