2017-06-13 5 views
0

Im Moment ist mein Code so etwas wie diese:Gibt es eine kürzere Möglichkeit, einen Wert als mit einer "Wenn-sonst-Kette" zuzuweisen?

var day = getDay(); //A function that gets this current day of the week as integer 
var dayname = ""; 
if (day==0) dayname = "Su"; 
if (day==1) dayname = "Mo"; 
... 
if(day==6) dayname = "Sa"; 

Es funktioniert, aber ich fühle mich wie es Art und Weise kürzer sein könnte, so etwas wie:

if (day == (0,1,2,3,4,5,6)) dayname = ("Su","Mo",...,"Sa"); 

Gibt es eine Möglichkeit, das zu tun ?

+3

Definieren Sie ein Array 'var dayNames = ["Su", "Mo", ..., "Sa"] 'und' dayname = dayNames [getDay()] 'brauchen nicht' if' – Satpal

Antwort

2
var days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']; 
var dayname = days[getDay()]; 
+0

Danke! Was passiert, wenn ich das Gegenteil tun muss (z. B. die Nummer aus der Zeichenfolge holen)? – InformaGiovani

+0

'var day_number = Tage.indexOf (Tag);' // wo Tag ist 'Montag' oder 'Samstag' oder was auch immer;) – guest

0

Sie können dies tun:

var dayNames = ['mo', 'tu', 'we', 'th', 'fr', 'sa', 'su']; 
var dayName = dayNames[getDay()]; 

Auf diese Weise gibt es keine if Aussage. Wenn day bei 1 beginnt und endet an der 7, können Sie tun:

var dayName = dayNames[getDay() - 1]; 
0

könnten Sie den folgenden Ansatz

ein Array als var days = ['Su', 'Mo', 'Tue', 'Thu', 'Fri', 'Sat']; definieren und verwenden Sie den Index 0-6 die bestimmten Tag zu wählen.

Also, wenn getDay(); kehrt 0 dann wird es sun speichern in dayname

var day = getDay(); //A function that gets this current day of the week as integer 
var days = ['Su', 'Mo', 'Tue', 'Thu', 'Fri', 'Sat']; 
var dayname = days[day]; 
0

Was Sie brauchen, ist eine Lookup-Tabelle:

var day = getDay(); 
var daysByNumber = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']; 
var dayName = daysByNumber[day]; 
0

Der andere Weg, dies zu tun, ist durch Wörterbücher mit

var day = getDay(); 
    dict = {0: 'Monday', 1: 'Tudesday', 2: 'Wednesday', 3: 'Thursday', 4: 'Friday', 5: 'Saturday', 6: 'Sunday'} 
    dayname=dict[day] 
    print(dayname) 
Verwandte Themen