Pourquoi jQuery distingue les vérifications non définies pour les variables globales et locales
Les directives de style de base de jQuery fournissent deux méthodes distinctes pour vérifier si une variable est définie :
Explorons la justification de l'approche de jQuery.
Pour les variables non déclarées, typeof foo renvoie "undefined". Cependant, la comparaison d'identité foo === undefined conduirait à l'erreur "foo n'est pas défini" car foo n'existe pas dans le runtime.
En revanche, pour les variables locales (qui sont explicitement déclarées), non une telle erreur se produirait. Par conséquent, jQuery utilise la vérification d'identité (variable === non définie) pour les variables locales et les propriétés locales des objets. Cette approche est sûre à utiliser car les variables et propriétés déclarées sont toujours définies, même si elles n'ont pas de valeur initiale.
Cependant, lorsqu'il s'agit de variables globales, typeof variable === "undefined" est utilisé à la place. En effet, les variables globales peuvent ou non être déclarées, et l'utilisation de variable === undefined entraînerait une erreur d'exécution si la variable n'est pas déclarée.
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!