Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

100
Visualizações
empujar el contenido de la matriz a otra matriz sin bucle

Aquí hay una pieza simple de JavaScript donde quiero agregar el contenido de orders.foo y orders2.foo a un ordersArr unidimensional.

 let _ = require('underscore'); let ordersArr = []; let orders = { foo: [ {x: 1, b: 2}, {y: 1, c: 3}, {a: 2, d: 4} ] } ordersArr = _.map(orders.foo, order => order) orders2 = { foo: [ {x: 2, b: 3}, {y: 5, c: 4}, {a: 3, d: 6} ] } let tOrders = _.map(orders2.foo, order => order); ordersArr.push(tOrders) console.log(ordersArr);

El problema con este código es que push en este caso crea una matriz multidimensional:

Producción

 [ { x: 1, b: 2 }, { y: 1, c: 3 }, { a: 2, d: 4 }, [ { x: 2, b: 3 }, { y: 5, c: 4 }, { a: 3, d: 6 } ] ]

¿Cómo itero el contenido de orders.foo y orders2.foo y obtengo sus resultados como una matriz de una sola dimensión?

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Puede spread el contenido de ambas matrices en la nueva matriz

 const arr1 = [1,2,3]; const arr2 = [4,5,6]; const arr3 = [...arr1, ...arr2]; console.log(arr3); // prints [1,2,3,4,5,6]

Difundir arr2 en arr1 también funciona.

 arr1.push(...arr2); console.log(arr1); // prints [1,2,3,4,5,6]

tan cambiando

 ordersArr.push(tOrders)

a

 ordersArr.push(...tOrders);

Deberia trabajar.

Para una respuesta completa:

 let ordersArr = []; let orders = { foo: [ {x: 1, b: 2}, {y: 1, c: 3}, {a: 2, d: 4} ] } orders2 = { foo: [ {x: 2, b: 3}, {y: 5, c: 4}, {a: 3, d: 6} ] } ordersArr.push(...orders.foo, ...orders2.foo);
about 4 years ago · Juan Pablo Isaza Relatório

0

El operador de propagación mencionado anteriormente es la mejor manera de hacerlo en 2021.

 let ordersArr = [...orders.foo, ...orders2.foo];
about 4 years ago · Juan Pablo Isaza Relatório

0

Usando guión bajo _.flatten :

 const orders = { foo: [ {x: 1, b: 2}, {y: 1, c: 3}, {a: 2, d: 4} ] }, orders2 = { foo: [ {x: 2, b: 3}, {y: 5, c: 4}, {a: 3, d: 6} ] }; const ordersArr = _.flatten([orders.foo, orders2.foo]); console.log(ordersArr);
 <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js"></script>

Usando spread operator javascript:

 const orders = { foo: [ {x: 1, b: 2}, {y: 1, c: 3}, {a: 2, d: 4} ] }, orders2 = { foo: [ {x: 2, b: 3}, {y: 5, c: 4}, {a: 3, d: 6} ] }; const ordersArr = [...orders.foo, ...orders2.foo]; console.log(ordersArr);

Usando javascript Array#concat :

 const orders = { foo: [ {x: 1, b: 2}, {y: 1, c: 3}, {a: 2, d: 4} ] }, orders2 = { foo: [ {x: 2, b: 3}, {y: 5, c: 4}, {a: 3, d: 6} ] }; const ordersArr = orders.foo.concat(orders2.foo); console.log(ordersArr);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda