javascript - Slå ihop alla värden i en karta
Jag får ett konstant resultat som detta:
result: Map<string, string[]>
När jag gör en console.log(result) är utdata:
Map {
'toto' => [ 'a-1', 'a-2' ],
'tata' => [ 'b-1', 'b-2' ],
'titi' => [ 'c-1', 'c-2' ],
}
Vad jag vill ha är ett konstant globalt resultat med alla värden som detta:
const globalResult = [ 'a-1', 'a-2','b-1','b-2','c-1','c-2' ]
Hur kan jag göra detta?
Tack
Svar #1
Du kan få kartvärden i en matris och sedan använda flat()-metoden på den som:
const myMap = new Map().set('toto', ['a-1', 'a-2']).set('tata', ['b-1', 'b-2'])
const arr = [...myMap.values()].flat()
console.log(arr)Svar #2
Du kan använda Array.from för att omvandla map-värden till en platt array
const map = new Map();
map.set('a',11)
map.set('b',22)
map.set('c',33)
const array = Array.from(map.values())
console.log(array)