Maison > interface Web > js tutoriel > le corps du texte

Comprendre la portée en JavaScript : guide du débutant

Mary-Kate Olsen
Libérer: 2024-10-26 11:31:29
original
971 Les gens l'ont consulté

Understanding Scope in JavaScript: A Beginner

JavaScript, réputé pour sa polyvalence, s'impose comme un langage incontournable dans le domaine du développement web. Au cœur de son essence réside le concept de portée, délimitant la portée des variables, des fonctions et des objets au sein d'une base de code. Dans ce discours, nous approfondissons les dimensions nuancées de la portée en JavaScript, encapsulant la portée globale, la portée locale et la portée des fonctions, complétées par des exemples illustratifs pour éclairer leur fonctionnement.

Qu’est-ce que la portée ?

En JavaScript, la portée fait référence à l'accessibilité des variables, des objets et des fonctions dans différentes parties de votre code. Il détermine où ces éléments peuvent être consultés et modifiés. Essentiellement, la portée définit la durée de vie et la visibilité des variables.

Types de portée

Il existe trois principaux types de portée en JavaScript :

  1. Portée mondiale
  2. Portée de la fonction
  3. Portée du bloc
  • **Portée mondiale

La portée globale englobe les variables, les fonctions et les objets accessibles depuis n'importe quelle partie d'un programme, ayant leurs origines en dehors de toute fonction d'encapsulation ou bloc de code. Prenez, par exemple, l'extrait suivant :

let globalVar = "I am global!";

function showGlobal() {
    console.log(globalVar); // Accessible here
}

showGlobal(); // Output: I am global!
console.log(globalVar); // Output: I am global!

Copier après la connexion
  • Portée de la fonction Les variables déclarées dans une fonction sont confinées à cette fonction et ne sont pas accessibles de l'extérieur. C’est ce qu’on appelle la portée de la fonction.
function myFunction() {
    let functionVar = "I am local!";
    console.log(functionVar); // Accessible here
}

myFunction(); // Output: I am local!
// console.log(functionVar); // Uncaught ReferenceError: functionVar is not defined

Copier après la connexion
  • Portée du bloc Introduite dans ES6, la portée du bloc s'applique aux variables déclarées avec let et const entre accolades {}. Ces variables ne sont accessibles que dans ce bloc.
if (true) {
    let blockVar = "I am inside a block!";
    console.log(blockVar); // Accessible here
}

// console.log(blockVar); // Uncaught ReferenceError: blockVar is not defined

Copier après la connexion

Chaîne de portée

JavaScript possède une chaîne de portées qui permet aux fonctions imbriquées d'accéder aux variables à partir de leurs portées parentes. Voici un exemple :

function outerFunction() {
    let outerVar = "I am outside!";

    function innerFunction() {
        console.log(outerVar); // Accessible here
    }

    innerFunction(); // Output: I am outside!
}

outerFunction();

Copier après la connexion

Portée lexicale

JavaScript utilise la portée lexicale, ce qui signifie que la portée d'une variable est déterminée par son emplacement dans le code source. Cela permet aux fonctions d'accéder aux variables depuis leur portée externe.

Meilleures pratiques pour gérer la portée

  1. Uselet et const : préférez-les à var pour éviter les problèmes de levage et créer des variables de portée bloc.

  2. Réduire les variables globales : pour éviter les conflits et maintenir un code plus propre, réduisez les variables globales au minimum.

  3. Utilisez IIFE (Immediately Invoked Function Expressions) : pour créer une nouvelle portée et protéger vos variables.

(function() {
    let scopedVar = "I am protected!";
    console.log(scopedVar);
})();
// console.log(scopedVar); // Uncaught ReferenceError

Copier après la connexion

Conclusion

Comprendre la portée est essentiel pour maîtriser JavaScript et écrire du code efficace. En appréhendant les différents types de périmètre et leurs implications, vous pouvez gérer vos variables plus efficacement et éviter les pièges courants

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!