我想我已閱讀所有以前對任何類似問題的回答,但未找到答案。使用Javascript構建動態JSON結構
我想建立一個JSON結構,看起來像這樣(但更大:));
[{"APC": {
"Description": "",
"Data": "001,044,1064",
"Units": "",
"AbbrvUnits": ""
}
}, {"DATE": {
"Description": "",
"Data": 1487858497000,
"Units": "Date",
"AbbrvUnits": ""
}}]
但是我能得到的最接近的是這個數據結構;
[{
"DataItem": "APC",
"DataVal": {
"Description": "",
"Data": "001,044,1064",
"Units": "",
"AbbrvUnits": ""
}
}, {
"DataItem": "DATE",
"DataVal": {
"Description": "",
"Data": 1487858497000,
"Units": "Date",
"AbbrvUnits": ""}}]
與此javascript(節點紅色):
DataVal = {
'Description' : "",
'Data' : DataValue,
'Units' : UnitsStr,
'AbbrvUnits' : ""
};
outputJSON.push({'DataItem' : label, DataVal});
如果我嘗試:
outputJSON.push({label : DataVal});
我只是在所產生的結構,而不是它的價值得到 「標籤」。是否有可能獲得Javascript來擴展變量「標籤」並將其值放入?有一些聲明2個數據變量的例子可以做這樣的事情,但它們都有效地對聲明中的'label'值進行了硬編碼。然而,有很多'標籤'項目,所以我真的不想硬編碼它。它也會使我具有其他類似數據的通用性。
這是一個Javascript的限制還是我錯過了什麼?
輝煌。有效;我會更詳細地閱讀爲什麼。非常感謝。 – Brian
這樣做仍然不能完全讓我滿意,因爲我已經結束了太多的對象層。爲了訪問數據,我需要使用msg/payload [0] .APC(因爲我已經完成了payload.msg = outputJSON)。我可以構造它,以便我可以簡單地使用payload.msg.APC? – Brian
啊,不要使用推,因爲它是不必要的。如果項目'標籤'是唯一的,我可以將'obj'賦給msg.payload。得到它了。 – Brian