Prova Node.js

Slutförd

I den här lektionen skapar och kör du ett Node.js skript.

Starta din utvecklingscontainer i en webbläsare

En utvecklingscontainermiljö är tillgänglig med alla beroenden som krävs för att slutföra varje övning i det här projektet. Du kan köra utvecklingscontainern i GitHub Codespaces i en webbläsare eller lokalt med hjälp av Visual Studio Code.

GitHub Codespaces kör en utvecklingscontainer som hanteras av GitHub med Visual Studio Code för webben som användargränssnitt. För den enklaste utvecklingsmiljön använder du GitHub Codespaces så att du har rätt utvecklarverktyg och beroenden förinstallerade för att slutföra den här utbildningsmodulen.

Viktigt!

Alla GitHub-konton kan använda Codespaces i upp till 60 timmar kostnadsfritt varje månad med 2 kärninstanser. Mer information finns i GitHub Codespaces månadsvis inkluderade lagrings- och kärntimmar.

  1. Starta processen för att skapa ett nytt GitHub Codespace på grenen main av MicrosoftDocs/node-essentials GitHub-lagringsplatsen.

  2. På sidan Skapa kodområde granskar du konfigurationsinställningarna för kodområdet och väljer sedan Skapa kodområde

    Skärmbild av bekräftelseskärmen innan du skapar ett nytt kodområde.

  3. Vänta tills kodområdet har startats. Den här startprocessen kan ta några minuter.

  4. Öppna en ny terminal i kodområdet.

    Dricks

    Du kan använda huvudmenyn för att navigera till menyalternativet Terminal och sedan välja alternativet Ny terminal .

    Skärmbild av menyalternativet codespaces för att öppna en ny terminal.

REPL i Node.js

Node.js har ett inbyggt REPL-läge (read-eval-print-loop) som är användbart för snabb kodutvärdering och experimentering. REPL-läget är en interaktiv konsolmiljö där du kan ange JavaScript-kod och göra så att Node.js tolkar och kör koden samt skriver utdata.

REPL-läget för Node.js fungerar så här:

  • Läs: Läser och parsar användarens JavaScript-kodindata (eller visar ett fel om koden är ogiltig).
  • Eval: Utvärderar den angivna JavaScript-koden.
  • Skriv ut: Skriver ut de beräknade resultaten.
  • Loop: Loopar och väntar på att användaren ska ange ett nytt kommando (eller avslutas om användaren anger ctrl-c två gånger).

Starta REPL-läget genom att node köra programmet i terminalen för utvecklingscontainern.

Kommentar

Använd högerklicka på >Klistra in för att ange ett kopierat kommando i REPL-konsolen.

node

REPL-miljön öppnas. Du bör se REPL-prompten:

>

Ange följande kod i REPL-konsolen (högerklicka på >Klistra in):

console.log('Hello World, from the REPL.')

Den här koden skriver ut meddelandet "Hello World, from the REPL" i REPL-konsolen:

Hello World, from the REPL.

Om du vill avsluta REPL-konsolen anger du Ctrl + C två gånger.

Skapa ett Node.js-skript

Node.js stöder även körning av kod från filer.

  1. Skapa en ny mapp med namnet hello-world i utvecklingscontainern.

  2. Skapa en fil med namnet index.js i den nya mappen.

  3. Kopiera följande kod till filen index.js :

    console.log('Hello World, from a script file.');
    
  4. Öppna den nya mappen i en terminal genom att högerklicka på mappnamnet och sedan välja Öppna i integrerad terminal.

  5. I terminalen anger du node kommandot följt av namnet på filen index.js:

    node index.js
    

    Du bör se följande utdata:

     Hello World, from a script file.
    

Du har nu kört din första JavaScript-kod med Node.js.

  • Fråga: Är console.log synkron eller asynkron?
  • Svar: Metoden console.log visas under utveckling för att köras omedelbart och antas därför vara asynkron. Det finns ingen garanti för asynkront beteende för den här metoden, så den måste betraktas som synkron. Eftersom kodkörningen kan blockeras tills console.log metoden är klar varnas du för att behålla console.log instruktioner i koden i produktion.

Lägga till en asynkron funktion

Följande asynkrona toppnivåkod begär en HTTP JSON-datakälla och visar den sedan.

  1. Lägg till följande kod i index.js filen för att skapa en asynkron HTTP-begäran:

    const https = require('https');
    
    console.log(`start`);
    
    try{
        const res = await https.get('https://nodejs.org/dist/index.json');
    
        console.log(res.statusCode);
    } catch( error ){
        console.log(error);
    }
    
    console.log(`end`);
    

    Metoden https.get gör en HTTP-begäran till Node.js webbplats och returnerar svaret. Metoden get tar två parametrar: URL:en som ska begäras och en återanropsfunktion som anropas när svaret tas emot. Återanropsfunktionen tar en enda parameter, res, som är svarsobjektet.

  2. Kör programmet igen:

    node index.js
    
  3. Ordningen på konsolloggarna är följande:

    start
    end
    200
    

Från utdata kan du se händelseloopen i praktiken. HTTP-metoden anropas och placeras i aktivitetskön i väntan på att den ska returneras. Händelseloopen tar nästa uppgift, vilket är metoden console.log.

Stoppa din utvecklingscontainer

Om du tar bort GitHub Codespaces-miljön kan du maximera mängden kostnadsfria timmar per kärna som du får för ditt konto.

Viktigt!

Mer information om ditt GitHub-kontos rättigheter finns i GitHub Codespaces månadsvis inkluderade lagrings- och kärntimmar.

  1. Logga in på GitHub Codespaces-instrumentpanelen (https://github.com/codespaces).

  2. Leta upp de codespaces som körs från MicrosoftDocs/node-essentials GitHub-lagringsplatsen.

    Skärmbild av alla kodområden som körs, inklusive deras status och mallar.

  3. Öppna snabbmenyn för kodområdet och välj Ta bort.

    Skärmbild av snabbmenyn för ett enda kodområde med borttagningsalternativet markerat.