Gibt es eine Abkürzung für die folgende -Stenografie für mehr oder Ausdrücke in if-Anweisung
if(tld == "com" || tld == "net" || tld == "co" || tld == "org" || tld == "info" || tld == "biz")
{
//do something;
}
Gibt es eine Abkürzung für die folgende -Stenografie für mehr oder Ausdrücke in if-Anweisung
if(tld == "com" || tld == "net" || tld == "co" || tld == "org" || tld == "info" || tld == "biz")
{
//do something;
}
Sie ein Array
if(["","com","net","co","org","info","biz"].indexOf(tld) > -1) {
// do something
}
nutzen könnten oder wenn Sie jquery verwenden:
$.inArray(tld, ["com","net","co","org","info","biz"])
Sie haben '! = -1' vergessen, da '0' ein perfekt gültiges Ergebnis ('com') wäre. – ThiefMaster
Vorsicht mit dem ersten IF-Code, als leerer String - '[" ",' - wird auch als * falsch *, * undefiniert * und * null * ausgewertet. Also, wenn ** tld ** einer von denen wäre, würde er zuerst IF passieren! Besser verwenden Sie 'if (["com", "net", "co", "org", "info", "biz"]. IndexOf (tld)> -1) ' –
Verwenden einer regexp:
if (/^(com|net|co|org|info|biz)$/i.test(tld)) {
// do something
}
Wie geht das Handle wenn Tld ist "Kinderbett", die "Co" enthält? Ok, du hast den Anfang und das Ende hinzugefügt, als ich gepostet habe. – hackartist
ist in Bezug auf die Leistung nicht regexp langsamer? – ShalomSam
@ShalomSam Ich weiß nicht, das ist keine Mikro-Optimierung, die ich noch getestet habe. –
Sie über die Verwendung von switch-Anweisung dachten? so etwas wie dieses:
switch(tld)
{
case 'com':
case 'net':
case 'co':
...
...
// do something for all of them
break;
default:
// if you want you can have default process here
break;
}
Ich habe darüber nachgedacht .. aber Sie würden idealerweise einen Schalter verwenden, wenn Sie verschiedene Ausführungen für verschiedene Fälle haben. Und mehr darüber suche ich eine Kurzschrift, meinen Code nicht länger zu machen. Danke für die Antwort obwohl sehr geschätzt! – ShalomSam
@Hamish Es sagt Javascript, Ich habe die Tags entsprechend bearbeitet. – purtip31
Werfen Sie einen Blick auf http://StackOverflow.com/A/10479102/298479 - Ich erklärte eine ganze Reihe von Methoden, um zu tun, was Sie wollen, und auch mit einem Leistungsvergleich verknüpft, falls das für Sie wichtig ist. – ThiefMaster
@ purtip31 - Danke. – ShalomSam