⊗jsPmFVNC 220 of 505 menu

Variabler med samma namn i funktioner i JavaScript

Antag att det finns en variabel num både utanför och inuti funktionen. I detta fall kommer alla ändringar av den lokala variabeln num inte att påverka den globala variabeln num:

let num = 1; // global variabel function func() { let num = 2; // lokal variabel console.log(num); } func(); // anropar funktionen, skriver ut 2 console.log(num); // skriver ut 1 - den globala variabeln förändrades inte

Men om vi glömmer att deklarera den lokala variabeln num med let, kommer ingen lokal variabel num att skapas inuti funktionen, utan istället kommer den globala variabeln att ändras:

let num = 1; function func() { num = 2; // glömde att skriva let - ändrar den externa variabeln console.log(num); } func(); // anropar funktionen, skriver ut 2 console.log(num); // skriver ut 2 - variabeln har ändrats

Det kan finnas två situationer här: antingen vill vi verkligen ändra den globala variabeln (då är allt ok), eller så har vi glömt let och av misstag ändrat den globala variabeln.

Det andra fallet är ett svårfångat fel, som leder till oförutsägbart beteende i skriptet. Därför bör du alltid deklarera en ny variabel med let.

Avgör, utan att köra koden, vad som kommer att skrivas ut i konsolen:

let num = 1; function func() { num = 2; } func(); console.log(num);

Avgör, utan att köra koden, vad som kommer att skrivas ut i konsolen:

let num = 1; function func() { let num = 2; } func(); console.log(num);
Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa