Utmaningar
2.0 Från enkel utskrift till modul med exporterad funktion
En "steg-för-steg"-utmaning där stegen är små , små, små och stort.
👉 OBS! Lös detta med enbart papper och penna utan att bland in något tangentbord!
2.0.1 Utskrift av uttrycks resultat
Skriv en sats, tänkt till filen app.js
, som skriver ut resultatet av uttrycket
27 + 15
i ett terminalfönster.
Lösningsförslag
Klicka här för lösningsförslag!
console.log()
används för att skriva ut i terminalen. Det är värdet av
uttrycket som skrivs mellan parenteserna som skrivs ut.
2.0.2 Spara ett uttrycks resultat i en variabel
Återvänd till modifiera den tidigare satsen så att resultatet av uttrycket
27 + 15
lagras i variabeln sum
vars värde sedan skrivs ut.
Lösningsförslag
Klicka här för lösningsförslag!
Här används let
för att deklarera variabeln sum
. Eftersom värdet sum
har
aldrig ändras skulle det i detta all gått lika bra, och enligt många bättre, att
deklarera en konstant istället för en variabel, const sum = 27 + 15
.
2.0.3 Spara värden i variabler
Modifiera tidigare satser så att värdena i uttrycket 27 + 15
lagras i
variablerna value1
coh value2
. Använd därefter variablerna i uttrycket
som bestämmer värdet som sum
tilldelas.
Lösningsförslag
Klicka här för lösningsförslag!
2.0.4 Generalisera med en funktion
Skapa funktionen add
som ska addera två värden som skickas till den som
argument. Den beräknade summan ska sedan returneras. Ersätt därefter uttrycket
som adderar variablernas värden med ett anrop av funktionen.
Lägg till satser som tilldelar variablerna nya värden, 12
respektive 55
, anropar
funktionen add
och presenterar det nya resultatet.
Lösningsförslag
Klicka här för lösningsförslag!
2.0.5 "ECMAScript-modularisera" funktionen 🤔
Flytta funktionen add
, från den tänkta filen app.js
till den tänkta filen
algebraic.js
. Var noga med att se till att app.js
fortsatt kan anropa
funktionen add
trots att den befinner sig i en annan modul.
Tips
Paketlösning.
Lösningsförslag
Klicka här för lösningsförslag!
2.0.6 Din första Node-applikation(?)
👉 OBS! Lös detta med enbart papper och penna utan att bland in något
tangentbord! Använd din dator!
Skapa och kör applikationen samt verifiera att värden 42 och 67 skrivs ut i terminalfönstret.
Lösningsförslag
Klicka här för lösningsförslag!
Du skapar en ny katalog skapas med mkdir
och du byter till en katalog med cd
.
mkdir
, "make directory", används för att skapa en ny katalog (bibliotek/folder).cd
, "change directory", används för att byta aktiv katalog.
Skapa katalogstrukturen med kommandona nedan.
Byt till katalogen week2-0
, skapa och öppna filen app.js
genom att i
terminalen skriva code app.js
som startar Visual Studio Code, skapar och öppnar
app.js
i den aktuella katalogen.
Efter att du sparat filen exekverar du kod i en JavaScript-fil med kommandot
node
följet av namnet på filen vars kod du vill exekvera. Om filen du vill
exekvera heter app.js
skriver du node app.js
på kommandoraden i terminalen.
Skapa filen package.json
med npm init -y
, och lägg till "type": "module"
.
Kör applikationen med node app.js
och verifierar att rätt värden skrivs ut.
2.1 Returnera ett heltals värde ökat med 1
Skapa en funktion som tar ett heltal som argument, ökar heltalet med 1 och returnerar resultatet.
Exempel
Tips
- Glöm inte att returnera resultatet.
Lösningsförslag
Klicka här för lösningsförslag!
Alternativ 1
Alternativ 2
Alternativ 3 👍
Den mest "seniora" lösningen? Ingen extra variabel skapas. Ingen variabel (parameter) vars värde ändras.
Alternativ 4 👎
En mindre bra lösning då den är svårare att förstå.
Värdet parametern value har ökas med 1 innan värdet returneras. Varför?
Eftersom operatorn ++
står innan value
ökas värdet först, sedan returneras
det. Hade det stått value++
hade värdet "först" returnerats för att därefter
ökas med 1.
2.2 Returnera summan av två tal
Skapa en funktion som tar två tal som argument och returnerar deras summa.
Exempel
Tips
- Du uttrycker en addition på samma sätt som du är van vid från matematiken.
- Glöm inte att returnera summan.
Lösningsförslag
Klicka här för lösningsförslag!
Alternativ 1
Alternativ 2 👍
2.3 Konvertera minuter till sekunder
Skriv en funktion tar ett heltal minuter som argument, konverterar det till sekunder och returnerar det värdet.
Exempel
Tips
- Du uttrycker en multiplikation med operatorn
*
. - Glöm inte att returnera resultatet.