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

182
Visualizações
How to create array of object from two different length of array javascript

How to create array of object from two different length of array

for example

arr1 = ["first","second","third","fourth","fifth","Sixth"]
arr2 = [["1","2","3","4","5","6"],["7","8","9","10","11","12"],["1","2","3","4"]]

finalArray = [{
   first:1,
   second:2
   third:3,
   fourth:4,
   fifth:5,
   sixth:6
},{
   first:7,
   second:8
   third:9,
   fourth:10,
   fifth:11,
   sixth:12
}]

I tried this using map but getting every key value pair as whole object

example

[
 {first: 1}
 {second: 2}
 {third: 3}
 {fourth: 4}
]
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

With map() and reduce():

const arr1 = ["first", "second", "third", "fourth", "fifth", "Sixth"];
const arr2 = [["1", "2", "3", "4", "5", "6"],
              ["7", "8", "9", "10", "11", "12"],
              ["1", "2", "3", "4"]];

const res = arr2.map(v => v.reduce((a, v, i) => ({...a, [arr1[i]]: v}), {}));

console.log(res);

about 4 years ago · Juan Pablo Isaza Relatório

0

You can take advantage of Array.prototype.reduce to update the shape of the result array

let arr1 = ["first","second","third","fourth","fifth","Sixth"];
let arr2 = [["1","2","3","4","5","6"],["7","8","9","10","11","12"],["1","2","3","4"]];

let result = arr2.reduce((accumulator, current) => {
  let obj = arr1.reduce((acc, currentKey, index) => {
    if(current.indexOf(index) && current[index] !== undefined ){
      acc[[currentKey]] = current[index];
    }
    return acc;
  }, {});
  return accumulator.concat(obj);
}, []);

console.log(result);

about 4 years ago · Juan Pablo Isaza Relatório

0

without reduce() and covered edge case when the arr1 contains fewer elements as the element from arr2

const arr1 = ["first","second","third","fourth","fifth","Sixth"]
const arr2 = [["1","2","3","4","5","6"],["7","8","9","10","11","12"],["1","2","3","4"]]

const res = arr2.map(values => {
    const res = {}
    for(const [index, value] of arr1.entries()){
        if(values[index]) {
            res[value] = values[index] // or parseInt(values[index])
        } else {
            break
        }
    }
    return res
})

console.dir(res)

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