ChrisB: Toter Button

Beitrag lesen

Hi,

Wie würdest Du denn bei Intervallen vorgehen?

Eine Schleife bietet sich an - über ein Array, in dem man eine Intervallgrenze und den zugehörigen Text ablegt:

var texte = [  
  { wert: 100, text : "das sind weniger als Hundert" },  
  { wert: 1000, text : "noch keine Tausend" },  
  { wert: 10000, text : "mindestens Tausend, aber noch keine Zehntausend" },  
  { wert: 100000, text : "Zehntausend oder mehr, das ist schon was" },  
  { wert: 1000000, text : "Hunderttausend[e] sind schon ganz schoen viel" }  
];  
  
var vergleichsWert = 4711,  
    ausgabe;  
for(var i=0, l=texte.length; i<l; ++i) {  
  if(vergleichsWert < texte[i].wert) {  
    ausgabe = texte[i].text;  
    break;  
  }  
}  
alert(vergleichsWert+"\n"+ausgabe);

Wenn man kleiner-Vergleiche macht, sortiert man die Intervallgrenzen aufsteigend, bei größer-Vergleichen andersherum.
Kleiner-gleich/größer-gleich kann man natürlich auch nehmen, wenn man die Intervallgrenze noch „mit drin“ haben will.

Wie Sonderfälle zu behandeln sind (ungültiger Wert, größer als eine Obergrenze), ist dann noch zu überlegen.

MfG ChrisB

--
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?