⊗jsPmFVNC 220 of 505 menu

Noms de variables identiques dans les fonctions en JavaScript

Supposons qu'il existe une variable num à la fois en dehors et à l'intérieur de la fonction. Dans ce cas, toute modification de la variable locale num n'affecte en rien la variable globale num :

let num = 1; // variable globale function func() { let num = 2; // variable locale console.log(num); } func(); // appelle la fonction, affichera 2 console.log(num); // affichera 1 - la variable globale n'a pas changé

Mais, si nous oublions de déclarer la variable locale num via let, alors à l'intérieur de la fonction aucune variable locale num ne sera créée, et la variable globale sera simplement modifiée :

let num = 1; function func() { num = 2; // oublié d'écrire let - on modifie la variable externe console.log(num); } func(); // appelle la fonction, affichera 2 console.log(num); // affichera 2 - la variable a changé

Deux situations sont possibles ici : soit nous voulions vraiment modifier la variable globale (alors tout va bien), soit nous avons oublié let et avons accidentellement modifié la variable globale.

Le second cas est une erreur difficile à détecter, conduisant à un comportement imprévisible du script. Par conséquent, déclarez toujours toute nouvelle variable en utilisant let.

Déterminez, sans exécuter le code, ce qui sera affiché dans la console :

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

Déterminez, sans exécuter le code, ce qui sera affiché dans la console :

let num = 1; function func() { let num = 2; } func(); console.log(num);
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser