2012-05-10 27 views
9

He creado una matriz:convertido matriz de cadena a entero gama

var endFlowArray = new Array; 
for (var endIndex in flowEnd) { // <- this is just some numbers 
    for (var i in dateflow) { // <- same thing 
     var check = $.inArray(flowEnd[endIndex], dateflow[i]); 
     if (check >= 0) { 
      endFlowArray.push(i); 
      flowEnd[endIndex] = null; 
     } 
    } 
} 

¿Cómo puedo convertir una matriz de cadenas:

["286", "712", "1058"] 

a entero matriz:

[286, 712, 1058] 
+5

Es una solución fácil. '.push (+ i)' o '.push (parseInt (i))'. Simplemente convirtiendo una cadena en un entero. –

+1

'my endFlowArray propuso algo como esto' Necesitas explicar esta afirmación. ¿Cómo "surgió"? ¿Estás usando un depurador de JavaScript? ¿alerta? ¿Algo más? –

+0

utilicé console.log() –

Respuesta

5

cadenas en la consola se simboliza envolviéndolas entre comillas. Por ese hecho, podemos suponer que i es una cadena. Convierta a un número entero y ya no será una cadena y ya no tendrá esas comillas.

endFlowArray.push(+i); 

sus "números" en flowEnd y dateFlow son en realidad las cadenas, no números.

92
var arrayOfNumbers = arrayOfStrings.map(Number); 
+0

Muy bien. – jhrr

+7

Ahora, eso es útil. Debería ser la respuesta aceptada. – TMichel