Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

226
Views
Combine múltiples matrices en función de su índice usando javascript

Necesito fusionar dos matrices en una sola matriz. Tengo código, pero no funciona como se esperaba: los está fusionando uno tras otro, pero necesito interbloquear los valores.

 <html> <head> <title></title> <script src="https://code.jquery.com/jquery-3.1.1.js"></script> </head> <body> <div id="result"></div> <script type="text/javascript"> var array1 = [1, 2, 3, 4]; var array2 = ["a", "b", "c", "d"]; var newArray = $.merge(array1, array2); $("#result").html(newArray); //the result its 1234absd //ineed result like 1a,2b,3c,4d </script> </body> </html>

about 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Puede usar Array#map en javascript simple.

 var array1 = [1, 2, 3, 4]; var array2 = ["a", "b", "c", "d"]; var newArray = array1.map((e, i) => e + array2[i]); console.log(newArray);

Si usa el mapa en matriz1, entonces el primer parámetro es el valor actual de matriz1 en el bucle y el segundo parámetro es el índice de ese elemento en la matriz. Entonces puede hacer coincidir el elemento actual en array1 con elementos de otras matrices con el mismo índice usando index.

 var array1 = [1, 2, 3, 4]; var array2 = ["a", "b", "c", "d"]; var array3 = ["f", "d", "s", "a"]; var newArray = array1.map(function(value, index) { return value + array2[index] + array3[index]; }); console.log(newArray);

about 4 years ago · Santiago Trujillo Report

0

Podría usar Array#reduce y Array#map para un recuento arbitrario de matrices con la misma longitud.

 var a1 = [1, 2, 3, 4], a2 = ["a", "b", "c", "d"], a3 = [9, 8, 7, 6], a4 = ["z", "y", "x", "w"], result = [a1, a2, a3, a4].reduce((a, b) => a.map((v, i) => v + b[i])); console.log(result);

ES5

 var a1 = [1, 2, 3, 4], a2 = ["a", "b", "c", "d"], a3 = [9, 8, 7, 6], a4 = ["z", "y", "x", "w"], result = [a1, a2, a3, a4].reduce(function (a, b) { return a.map(function (v, i) { return v + b[i]; }); }); console.log(result);

about 4 years ago · Santiago Trujillo Report

0

Solo una pequeña nota de variación, para fusionar por índice en una matriz múltiple, para crear una matriz asociativa de valores.

 const a = [1, 2, 3, 4], b = [34, 54, 54, 43] console.log( a.map((e,i) => [e,b[i]]) )


Luego, más tarde, para buscar la coincidencia más cercana a un valor dado. En este ejemplo, buscando el mejor valor asociado para 3.7 :

 const a = [1, 2, 3, 4], b = [34, 54, 54, 43], c = a.map((e,i) => [e,b[i]]), search = 3.7, temp = []; c.forEach(function(e){ temp.push(e[0]) }) const seek = temp.reduce((m, n) => (Math.abs(n-search) < Math.abs(m-search) ? n : m)) const index = c.findIndex((s) => s.indexOf(seek) !== -1) console.log(c[index][1])

Esto no es exactamente cómo se comporta un objeto .

Por ejemplo, las entradas de índice idénticas no se fusionan, pero mantienen sus valores asociados en una nueva entrada (índice duplicado), podemos sacar Matemáticas del índice y crear una matriz de transformación. Podemos usar cualquier columna como índice y buscar en ambos sentidos.

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!