2016-12-14 4 views
1

Wie kann ich mit Javascript überprüfen, ob ein String mehr als 1 Integer hat?Wie überprüft man, ob ein String mehr als 1 Integer hat, getrennt durch ein Komma?

dh.

var x = 1,15,30 { returns true } 


var x = 13 { returns false } 
+0

Der von Ihnen gepostete Code macht keinen Sinn. Wo ist die Schnur? Wolltest du schreiben? Var x = '1,15,30'; // gibt wahr zurück? Wie lautet das Format der Zeichenfolge? Sind Zahlen immer durch ','? Kann es floats (z.B. '1.5') geben? Sie liefern nicht genügend Informationen. –

Antwort

0

Verwenden regex für Gruppen von Ziffern zu suchen (\d+). Wenn die Länge aller gefundenen Gruppen größer ist als 1, wird true zurückgegeben, wenn nicht false zurückgegeben wird.

function moreThenOneNumber(str) { 
 
    return str.match(/\d+/g).length > 1; 
 
} 
 

 
var x = '1,15,30'; 
 
var y = '13'; 
 

 
console.log(moreThenOneNumber(x)); 
 

 
console.log(moreThenOneNumber(y));

0

Unter der Annahme, dass alle Elemente ganze Zahlen sind:

function(s){ return s.indexOf(',')!=-1 } 
0

Unter Berücksichtigung, dass Sie überprüfen, ob eine bestimmte Zeichenfolge eine ganze Zahl mit einer von vielen Techniken im Internet so diese eine (How to check if a variable is an integer in JavaScript?) und dass diese Werte durch Komma getrennt sind, können Sie etwas tun:

var x = "1,15,30"; //true 
 

 

 
var y = "13"; //false 
 

 
console.log(check(x)); 
 
console.log(check(y)); 
 

 
function check(value) { 
 
    var j = 0; 
 
    var a = value.split(","); 
 
    if (a.length > 0) { 
 
    for (var i = 0; i < a.length; i++) { 
 
     if (isInt(a[i])) { 
 
     j++; 
 
     } 
 
     if (j >= 2) { 
 
     return true; 
 
     } 
 
    } 
 
    } 
 
    return false; 
 
} 
 

 
function isInt(data) { 
 
    return data == parseInt(data, 10); 
 
}

Verwandte Themen