2017-02-01 4 views
0

Ich habe gestern einige Antworten für diese Frage erhalten, aber dieser Code funktioniert nicht genau so, wie ich es brauche, und ich kann niemandem auf meinem ursprünglichen Thread antworten mit so wenigen Worten wie nötig.Teilen eines Arrays aus Buchstaben und Zahlen in zwei separate Arrays

Ich versuche, Eingaben von einem Eingabefeld zu nehmen, sie zu teilen und sie dann in zwei Arrays zu sortieren: eins für Zahlen, das andere für Nicht-Nummern.

Hier ist mein Code:

var splitResult = listResult.split(separator); 
    var L = 0; 
    letterArray = []; 
    numberArray = []; 
    for (; L < splitResult.length; L++) { 
    if(isNaN(splitResult[L]) && typeof splitResult[L] === 'string') { 
    letterArray.push(splitResult[L]); 
    L = L + 1 
    } else if (Number(splitResult[L])) { 
    numberArray.push(splitResult[L]); 
    L = L + 1; 

Meine Probleme entstehen, wenn ich meine Arrays überprüfen. Wenn die Eingabe gemischt ist, bekomme ich mein numberArray perfekt, aber es gibt absolut keine Ausgabe für letterArray, nicht einmal undefiniert oder NaN oder 0. Auch wenn die Eingabe nur Zahlen ist, also zum Beispiel: 1,2,3,4 , 5,6,7, numberArray zeigt sich als 1,3,5,7,

Bitte sagen Sie mir, was schief geht, wenn Sie können.

+0

können Sie die alphanumerische Eingabe und das erwartete Ergebnis posten? – RomanPerekhrest

Antwort

0

Der Zuwachs L = L + 1; ist nicht erforderlich.

Da in der for Schleife, erhöhen Sie den Wert von L wie L ++, so dass ein anderes Inkrement für L nicht erforderlich ist.

var splitResult = listResult.split(separator); 

     var L = 0; 
     letterArray = []; 
     numberArray = []; 
     for (; L < splitResult.length; L++) { 
     if(isNaN(splitResult[L]) && typeof splitResult[L] === 'string') { 
     letterArray.push(splitResult[L]); 

     } else if (Number(splitResult[L])) { 
     numberArray.push(splitResult[L]); 
     } 
+0

Wow, vielen Dank – Giverbud

0

Ich denke, Sie fügen L + 1 zweimal in der Schleife, einige Zeichen überspringen.

entfernen

L = L + 1; 

von jeder Anweisung, wenn

+0

Sie und Agalo sind Gottheiten der Erkennung, danke – Giverbud

Verwandte Themen