Maison >interface Web >js tutoriel >Quand et pourquoi devriez-vous utiliser l'instruction \'with\' de JavaScript ?

Quand et pourquoi devriez-vous utiliser l'instruction \'with\' de JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-24 08:16:10536parcourir

When and Why Should You Use JavaScript's

Dévoilement des avantages potentiels de la déclaration « with » de JavaScript au-delà de ses pièges

La déclaration « with » de JavaScript, souvent considérée avec scepticisme, offre applications pratiques lorsqu’ils sont utilisés avec soin. Comme le démontrent les commentaires perspicaces d'Alan Storm, explorons les cas où « with » prouve sa valeur.

Création de variables à portée de bloc

Avant l'introduction de « let » dans ES6, JavaScript manquait de véritable portée de bloc. Cet obstacle pourrait entraîner des collisions de variables inattendues dans les boucles, comme dans le code suivant :

for (var i=0; i<3; ++i) {
   var num = i;
   setTimeout(function() { alert(num); }, 10);
}

En utilisant "with", cependant, nous pouvons simuler efficacement la portée du bloc :

for (var i=0; i<3; ++i) {
   with ({num: i}) {
      setTimeout(function() { alert(num); }, 10);
   }
}

Ici, chaque itération de la boucle a sa propre variable discrète "num", résolvant le problème des conflits de variables.

Autre Cas d'utilisation légitimes

Au-delà de son potentiel de limitation de la portée des blocs, l'instruction « with » trouve son utilité dans diverses situations :

  • Simplification de l'accès aux objets : "avec" permet d'accéder de manière concise aux objets imbriqués propriétés :

    with(obj) {
     console.log(name + " is " + age + " years old.");
    }
  • Gestion des variables d'instance privées : L'encapsulation peut être améliorée à l'aide de "with" pour créer des variables d'instance pseudo-privées dans les objets :

    function Person(name, age) {
     with(this) {
        this.name = name;
        this.age = age;
     }
    }

Il est crucial de souligner que « avec » doit être utilisé judicieusement, car son potentiel les inconvénients peuvent être importants. En l’employant avec parcimonie et en comprenant clairement ses implications, on garantit que ses avantages l’emportent sur ses risques. En adoptant ces cas d'utilisation légitimes, les développeurs peuvent exploiter la puissance du « avec » en JavaScript tout en atténuant ses pièges.

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!

Déclaration:
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