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

166
Visualizações
¿Cómo intercambiar valores de una matriz? JavaScript

Estoy usando Leaflet y estoy tratando de crear una polilínea y puntos de marcador, pero da latitud y longitud opuestas, así que tengo que intercambiarlos. Crear un marcador es fácil porque solo tiene un par de latitud y longitud, pero crear una polilínea es complicado porque tiene muchos puntos.
A continuación se muestra lo que estoy usando actualmente para intercambiar latitud y longitud por puntos de marcador.

 var splitObj = objVal.toString().split("],["); var latlng = splitObj.map(function(x) { var couple= (/\d+.\d+, \d+.\d+/g).exec(x).toString(); var splitted = couple.split(", "); return "["+splitted[1]+","+splitted[0]+"]"; }); latlng.join();

Resultado:

['[[a, b], [c, d], [e, f]]'] // este es el objVal
expectativa:
['[[b,a], [d,c], [f,e]]']
la realidad:
['[licenciado en Letras]']

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

0

map sobre la matriz y, para cada matriz interna, devuelva una nueva matriz después de intercambiar los elementos.

 const data = [[124.432841, 8.3963], [124.496898, 8.3963], [124.571937, 8.40898]]; const result = data.map(arr => { return [arr[1], arr[0]]; }); console.log(result);

about 4 years ago · Juan Pablo Isaza Relatório

0

Suponiendo que la entrada es una cadena de valores similares a una matriz anidada, la siguiente solución puede ayudar a transformar/intercambiar valores de latitud y longitud.

Fragmento de código

 const inpVal = ['[[a, b], [c, d], [e, f]]']; // helper method to strip first & last char of a string const stripFirstLast = s => s.slice(1, s.length - 1); // helper method to swap lat & longitutde values const swapLatLon = ([lat, lon]) => [lon, lat]; // place holder to safe-keep value of input const tmp = stripFirstLast(inpVal[0]) .replaceAll('], ', '] | ') .split(' | '); // calculate the result const res = ["[" + tmp.map( x => '[' + swapLatLon( stripFirstLast(x).split(', ') ).join(', ') + ']' ).join(', ') + "]" ]; // console-log to validate/verify console.log( 'input: ', inpVal, '\nresult: ', res );

Explicación

Los comentarios en línea explican el enfoque utilizado.

Intercambiar con valores reales (y no cadenas)

Esta es una réplica casi exacta de la solución/respuesta de Andy con solo un cambio en lugar de manejar la matriz interna como arr , el iterador accede directamente a los valores de latitud y longitud. Creo que hace que la solución sea un poco más fácil de leer.

 // Previous solution where the orig data was not taken as a string const swapLoLa = arr => arr.map(([lon, lat]) => [lat, lon]); const orig = [[124.432841, 8.3963], [124.496898, 8.3963], [124.571937, 8.40898]]; console.log( 'orig arr: ', orig, '\nswapped arr: ', swapLoLa(orig) );

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