簡體   English   中英

將 JSON 對象中的數組轉換為 javascript 中的單個變量

[英]Convert array inside JSON object into individual variables in javascript

我有一個包含兩個數組的 JSON 對象。 我想將這些數組元素轉換為 JSON 對象中的單個元素。
我需要這個用於在 javascript 中輸入 D3 函數。

我現在的對象:

{
  0:{
      start:"2016-01-01",
      values:[10,11,12],
      names:["a","b","c"]
     },
  1:{
      start:"2016-01-02",
      values:[25,23,50],
      names:["a","b","c"]
     }
}

轉換對象:

{
  0:{
      start:"2016-01-01",
      a:10,
      b:11,
      c:12
     },
  1:{
      start:"2016-01-02",
      a:25,
      b:23,
      c:50
    }
}

變量的數量可以變化。 它不會總是3。

任何幫助表示贊賞,謝謝

我知道這不是最好的,但這是實現你想要的方式之一。

 x={ 0:{ start:"2016-01-01", values:[10,11,12], names:["a","b","c"] }, 1:{ start:"2016-01-02", values:[25,23,50], names:["a","b","c"] } } for(y in x){ if(x.hasOwnProperty(y)){ x[y].names.forEach((key, i) => x[y][key] = x[y].values[i]); delete x[y].names; delete x[y].values; } } console.log(x);

 var array = { 0:{ start:"2016-01-01", values:[10,11,12], names:["a","b","c"] }, 1:{ start:"2016-01-02", values:[25,23,50], names:["x","y","z"] } } convertArrayProp = ( newObject ) => { Object.keys( array ).map( ( key ) => { newObject[key] = {}; newObject[key]['start'] = array[key]['start']; array[key]['names'].map( ( name, index ) => newObject[key][name] = array[key]['values'][index]); }); return newObject; } console.log(convertArrayProp({}));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM