Att skriva ut delar av datum som ord i JavaScript
Du kan redan skriva ut veckodagen som
ett nummer med metoden getDay. Ofta
behöver vi dock inte veckodagens nummer, utan
dess textuella namn. Låt oss skriva kod
som omvandlar de nummer som returneras av
metoden getDay till motsvarande
veckodagsnamn.
Låt oss först skriva kod som skriver ut numret för den aktuella veckodagen:
let date = new Date();
let day = date.getDay();
console.log(day);
Låt oss nu förbättra den här koden så att
det inte är veckodagens nummer som skrivs ut, utan dess
namn (för korthetens skull kommer söndag att vara
'sön', måndag 'mån' och så vidare).
För att lösa problemet kommer vi att skapa en array med veckodagar
days och börja den med söndag (eftersom
det är dag noll):
let days = ['sön', 'mån', 'tis', 'ons', 'tor', 'fre', 'lör'];
Hur kan vi använda denna array för att skriva ut,
till exempel, 'tis'? Vi måste skicka
numret för den dagen inom hakparenteser (tisdag
har nummer 2):
let days = ['sön', 'mån', 'tis', 'ons', 'tor', 'fre', 'lör'];
console.log(days[2]); // skriver ut 'tis'
Men vi vill inte skicka veckodagen
manuellt, utan vill att JavaScript själv ska bestämma
dagens veckodag och skriva ut dess namn. För att göra detta
måste vi kombinera det som metoden
getDay returnerar med vår array days:
let date = new Date();
let day = date.getDay();
let days = ['sön', 'mån', 'tis', 'ons', 'tor', 'fre', 'lör'];
console.log(days[day]);
Antag att vi har följande array:
let months = [
'jan', 'feb', 'mar', 'apr', 'maj', 'jun',
'jul', 'aug', 'sep', 'okt', 'nov', 'dec'
];
Skriv ut namnet på den aktuella månaden med hjälp av denna array.