Internet Explorer: “de la console n'est pas défini” Erreur

J'ai été en utilisant console.log() en JavaScript, j'ai écrit et une erreur de: console is not defined a été jeté dans Internet Explorer (a bien fonctionné dans d'autres navigateurs).

Je l'ai remplacé par:

if (console) console.log("...");

Si console est undefined, j'attendrais la condition à évaluer que false. Ergo, la déclaration console.log ne serait pas exécutée et ne renvoie pas d'erreur.

Au lieu de cela, une erreur d': console is not defined at character 4 est levée.

Est-ce un IE bug? Ou est-ce "si" condition de vraiment illégal? Il semble absurde, car si if (console) est illégal, alors if (console==undefined) devrait être illégal aussi.

Comment êtes-vous censé vérifier undefined variables?

  • console n'existe pas dans IE, sauf si la console est en fait ouvert.
  • BTW, vous avez peut-être une autre console objet, donc à toute épreuve solution serait de vérifier que console.log existe et est une fonction.
  • double possible de 'console" n'est pas défini d'erreur d'internet explorer
  • Ai-je vraiment écrire "Ergo"??? Ou est-ce que @Matt McDonald édité?
  • Ergo a été ajoutée par l'éditeur "user1385191" 🙂
InformationsquelleAutor matteo | 2012-03-15