伙計們!我無法獲取此陣列中的特定專案。
[
{
"averages":[
{
"STATUS":"0",
"TYPE":"AAA",
},
{
"STATUS":"0",
"TYPE":"ABC",
},
{
"STATUS":"1",
"TYPE":"ESD",
},
{
"STATUS":"1",
"TYPE":"AAA",
},
]
},
{
"averages":[
{
"STATUS":"0",
"TYPE":"CCC",
},
{
"STATUS":"0",
"TYPE":"AAA",
},
{
"STATUS":"1",
"TYPE":"ESD",
},
{
"STATUS":"1",
"TYPE":"XXX",
},
]
},
{
"averages":[
{
"STATUS":"1",
"TIPO":"XXX",
},
{
"STATUS":"1",
"TYPE":"LLL",
},
{
"STATUS":"1",
"TYPE":"AAA",
},
{
"STATUS":"1",
"TYPE":"NU",
},
{
"STATUS":"0",
"TYPE":"XXX",
},
{
"STATUS":"1",
"TYPE":"AAA",
}
]
},
]
我正在嘗試將狀態與 AAA 型別分開
[0, 1, 0, 1, 1, 1]
我得到這樣的陣列:
var quality = solicitacoes[0].produtor.dados[0].apiLaticinio[0].qualidade[0]
var qualityjson = JSON.parse(quality)
console.log(JSON.stringify(qualityjson));
我嘗試使用此材料,但沒有成功:在此處輸入鏈接描述
我可以按照我提到的方式訪問哪些 nodejs 資源?
謝謝如果有人可以幫助我!
uj5u.com熱心網友回復:
我相信您是在說您想將帶有STATUS欄位的物件陣列轉換為數字陣列。假設您在上面的陣列中有一個專案:
{
"averages":[
{
"STATUS":"0",
"TYPE":"AAA",
},
{
"STATUS":"0",
"TYPE":"ABC",
},
{
"STATUS":"1",
"TYPE":"ESD",
},
{
"STATUS":"1",
"TYPE":"AAA",
},
]
},
假設上述內容被決議并存盤為item:
const statuses = item.averages.map(i => i.STATUS);
Array.prototype.map將允許您以相同的方式操作陣列的每個元素并回傳新陣列(它將具有與舊陣列相同數量的元素)。
在這種情況下,我們使用一個帶有STATUSandTYPE欄位的物件,而只回傳該STATUS欄位的值。所以我們最終得到了一個數字陣列;[0, 0, 1, 1].
uj5u.com熱心網友回復:
要從給定陣列中獲取所有狀態,您可以在Array.map()內部使用,Array.map()如下所示:
const getItems = (array = items) => {
return array.map((arItem, _) => {
return arItem.averages.map((nestItem, _) => {
return nestItem.STATUS
})
})
}
console.log([].concat(...getItems()))
//Output:
//[
// '0', '0', '1', '1',
// '0', '0', '1', '1',
// '1', '1', '1', '1',
// '0', '1'
//]
但是,如果您嘗試使用 獲取專案TYPE='AAA',則可以使用以下代碼:
const getTypeAAAItems = (array = items) => {
return array.map((arItem, _) => {
return arItem.averages.filter((nestItem) => {
return nestItem.TYPE === 'AAA'
})
})
}
//Output:
//[
// { STATUS: '0', TYPE: 'AAA' },
// { STATUS: '1', TYPE: 'AAA' },
// { STATUS: '0', TYPE: 'AAA' },
// { STATUS: '1', TYPE: 'AAA' },
// { STATUS: '1', TYPE: 'AAA' }
//]
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/418424.html
標籤:
