Internet Explorer pose un obstacle aux développeurs utilisant des instructions de console telles que console.log (...) en raison de la nature indéfinie de la variable de console. Malgré les tentatives pour contourner ce problème, comme l'ajout d'un bloc de script qui attribue une fonction factice à la variable de console, des erreurs persistent.
Pour résoudre ce problème, une approche modifiée est nécessaire :
Solution :
Préfixez la variable de console avec window ou utilisez l'instruction conditionnelle if (typeof console === 'undefined') :
if (!window.console) console = {log: function() {}};
Explication :
Les variables non définies ne peuvent pas être référencées directement. Cependant, toutes les variables globales sont des attributs du même nom du contexte global (fenêtre dans les navigateurs). L'accès à un attribut non défini (par exemple, window.console) est valide et attribue la valeur correspondante (dans ce cas, une fonction).
Une autre option consiste à utiliser l'opérateur typeof pour vérifier l'état indéfini de la variable avant de l'attribuer. :
if (typeof console === 'undefined') console = {log: function() {}};
En utilisant ces solutions de contournement, les développeurs peuvent contourner l'erreur « console » non définie dans Internet Explorer et exploiter l'API de la console à des fins de débogage et de journalisation.
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!