Eu tenho dois objetos como este:
let obj1 = { slotIDs: ["5e0301f353ee2a0546298f15"] }
let obj2 = { slotIDs: ["5e0301f353ee2a0546298f15", "5e03050453ee2a0546298f1c"] }
Eu preciso mesclá-los dentro de uma única matriz como esta
let newObj = ["5e0301f353ee2a0546298f15", "5e03050453ee2a0546298f1c"]
Eu tentei usar lodash union e mapa, mas sem sorte.
fonte
obj1.slotIDs
comobj2.slotIDs
, e não mesclar as matrizes, e recebe apenas os valores exclusivos. Adicione outro ID exclusivo aoobj1.slotIDs
, e ele desaparecerá no resultado, ou apenas altere a ordem dos objetos na atribuição aobj2, obj1
e verifique o resultado.Object.assign(obj1, obj2).slotIDs
fonte
obj1.slotIDs
comobj2.slotIDs
, e não mesclar as matrizes, e recebe apenas os valores exclusivos. Adicione outro ID exclusivo aoobj1.slotIDs
, e ele desaparecerá no resultado, ou apenas altere a ordem dos objetos na atribuição aobj2, obj1
e verifique o resultado.EDITAR:
Resposta antiga:
Que tal
{ ...obj1, ...obj2 }.slotIDs
?fonte
Se o seu objeto puder ter propriedades adicionais que armazenam valores de matriz e você desejar mesclar tudo isso em uma matriz exclusiva, poderá usar
Object.entries()
com.map()
e, em seguida, aSet
para remover as duplicatas:fonte