Foros del Web » Programando para Internet » Javascript »

Comparar y concatenar cadena javascript

Estas en el tema de Comparar y concatenar cadena javascript en el foro de Javascript en Foros del Web. Hola, Haber si me podeis hechar una manilla. Tengo esta cadena: "COD11", "COD20", "COD15", "COD57" Estoy buscando una funcion que compare con todos los codigos ...
  #1 (permalink)  
Antiguo 22/11/2011, 10:51
 
Fecha de Ingreso: febrero-2009
Mensajes: 16
Antigüedad: 15 años, 8 meses
Puntos: 0
Comparar y concatenar cadena javascript

Hola,

Haber si me podeis hechar una manilla.

Tengo esta cadena: "COD11", "COD20", "COD15", "COD57"

Estoy buscando una funcion que compare con todos los codigos y los que encuente en la cadena los una.

"COD05", "COD02", "COD04", "COD10"

Comparar con:

"COD01", "COD02", "COD03", "COD04"..........

Resultado:

"COD02", "COD04"

Me podeis ayudar???

Gracias!!!
  #2 (permalink)  
Antiguo 22/11/2011, 14:12
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 14 años, 5 meses
Puntos: 310
Respuesta: Comparar y concatenar cadena javascript

Si confías en un browser moderno:
Código Javascript:
Ver original
  1. var code = 'foo';
  2. console.log(list.indexOf(code) > -1); // boolean
Si ese elemento existe en el array dará true, y si no false. Si usas un navegador antiguo siempre puedes emular la función a mano.
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #3 (permalink)  
Antiguo 23/11/2011, 02:21
 
Fecha de Ingreso: febrero-2009
Mensajes: 16
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Comparar y concatenar cadena javascript

No entiendo muy bien la funcion, no veo como adaptarla a lo que necesito.

"COD05", "COD02", "COD04", "COD10"

Comparar con:

"COD01", "COD02", "COD03", "COD04"..........

Resultado:

"COD02", "COD04"

Gracias!!
  #4 (permalink)  
Antiguo 23/11/2011, 08:43
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 5 meses
Puntos: 1012
Respuesta: Comparar y concatenar cadena javascript

prueba ahora
Cita:
["COD05", "COD02", "COD04", "COD10"].forEach(function(v){if(["COD02", "COD04"].indexOf(v) > -1) document.write(v, ' ')});
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #5 (permalink)  
Antiguo 23/11/2011, 10:04
Avatar de ryugen
Colaborador
 
Fecha de Ingreso: agosto-2008
Ubicación: Rosario, Santa Fe
Mensajes: 350
Antigüedad: 16 años, 2 meses
Puntos: 187
Respuesta: Comparar y concatenar cadena javascript

Te dejo dos versiones posibles de acuerdo si los codigos vienen en cadenas o arreglos:
Código Javascript:
Ver original
  1. var cadena1 = '"COD05", "COD02", "COD04", "COD10"';
  2. var cadena2 = '"COD01", "COD02", "COD03", "COD04"';
  3.  
  4. function interseccion(cad1,cad2){
  5.     var resultado = '';
  6.     var codigos = cad1.split(',');      
  7.     for (var i = 0; i < codigos.length; i++){
  8.         codigos[i].trim();
  9.         if(cad2.indexOf(codigos[i]) > -1){
  10.             resultado = resultado + ',' + codigos[i];
  11.         }
  12.     }
  13.     return resultado.substring(1);
  14. }
  15.  
  16. alert(interseccion(cadena1,cadena2));
  17.  
  18. var arreglo1 = ["COD05", "COD02", "COD04", "COD10"];
  19. var arreglo2 = ["COD02", "COD04","COD01"];
  20.  
  21. function interseccion2(arr1,arr2){
  22.     var resultado = [];
  23.     var j = 0;
  24.     for (var i = 0; i < arr1.length; i++){
  25.        
  26.         if(arr2.indexOf(arr1[i]) > -1){
  27.             resultado[j] = arr1[i];
  28.             j = j + 1;
  29.         }
  30.     }
  31.     return resultado;
  32. }
  33.  
  34. alert(interseccion2(arreglo1,arreglo2));

Se puede ver funcionando aca: http://jsfiddle.net/p4bl1t0/nKa5g/
  #6 (permalink)  
Antiguo 23/11/2011, 10:40
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 18 años
Puntos: 56
Respuesta: Comparar y concatenar cadena javascript

Código Javascript:
Ver original
  1. function _indexOf(arr, c) {
  2.     if (arr.indexOf) return arr.indexOf(c)
  3.     var b = 0
  4.     while( arr[b++] ) if (arr[b] === c) return b
  5.     return -1
  6. }
  7. function Found(arr1,arr2){
  8.     var nuevo = [], d = 0
  9.     while( arr1[d++] )
  10.         _indexOf(arr2, arr1[d]) > -1 && nuevo.push( arr1[d] )
  11.     return nuevo
  12. }
  13. var cad1 = '"COD05", "COD02", "COD04", "COD10"'
  14. var cad2 = '"COD01", "COD02", "COD03", "COD04"'
  15. cad1 = cad1.match(/COD\d+/gi)
  16. cad2 = cad2.match(/COD\d+/gi)
  17.  
  18. alert(Found(cad1,cad2).join(','))
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */

Última edición por America|UNK; 23/11/2011 a las 10:46

Etiquetas: concatenar, funcion, cadenas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:23.