我有一個嵌套陣列,看起來像這樣:
{
"id": 1,
"QUALITY": 91.98,
"TEMPERATURE": 20.5,
"SENSOR_DATE": "2021-09-24T04:53:06.801Z",
"SOURCE_ID": 1,
"SENSOR_NAME": "TD2",
"NEXT_OFFSET": 11931
},
我想改變這個字串
"QUALITY": 91.98,
"TEMPERATURE": 20.5,
對此:
{
"data": [
{
"TELEMATICS": {
"QUALITY": 91.98,
"TEMPERATURE": 20.5
},
"SOURCE_ID": "1",
"SENSOR_NAME": "TD2",
"SENSOR__DATETIME": "2021-09-24T04:53:06.801Z"
},
],
"NEXT_OFFSET": 11931
}
我進行了許多不同的嘗試,但由于這段代碼,我所能得到的只有:
var telematics = JSON.parse(JSON.stringify(payload, ['QUALITY', 'TEMPERATURE']));
var data = JSON.parse(JSON.stringify(payload, ['SOURCE_ID', 'SENSOR_NAME', 'SENSO$
payload = JSON.parse(JSON.stringify({TELEMATICS: telematics, data}, null, 2));
payload = JSON.stringify({data: payload}, null, 2);
結果,我得到了兩個不同的物件。我不能用嵌套的 TELEMATICS 陣列將它們合二為一:
{
"QUALITY": 91.33,
"TEMPERATURE": 25.7
}
],
"data": [
{
"SOURCE_COMPONENT_ID": 1,
"SENSOR_NAME": "TD2",
"SENSOR_READING_DATETIME": "2021-09-24T04:53:06.801Z"
},
uj5u.com熱心網友回復:
你說你有一個陣列 - 顯示的第一項是一個物件,也許它是該陣列的一個元素?讓我們假設payload是這樣的物件的陣列。
您正在嘗試在內部創建一個“資料”陣列 - 帶有一個元素。那有必要嗎?它可能有不止一種元素嗎?讓我們假設它現在只有一個元素。
const payload = [{
"id": 1,
"QUALITY": 91.98,
"TEMPERATURE": 20.5,
"SENSOR_DATE": "2021-09-24T04:53:06.801Z",
"SOURCE_ID": 1,
"SENSOR_NAME": "TD2",
"NEXT_OFFSET": 11931
}, {
"id": 2,
"QUALITY": 91.98,
"TEMPERATURE": 20.5,
"SENSOR_DATE": "2021-09-24T04:53:06.801Z",
"SOURCE_ID": 1,
"SENSOR_NAME": "TD2",
"NEXT_OFFSET": 11931
}];
const result = payload.map(({QUALITY, TEMPERATURE, NEXT_OFFSET, ...rest})=> ({
data: [{
...rest,
TELEMATICS: {
QUALITY,
TEMPERATURE
}
}],
NEXT_OFFSET
}));
console.log(result);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/315960.html
標籤:javascript 数组 json
