Quels environnements (javascript) prennent en charge le mode strict ECMAscript 5? (aka "utiliser strict")

StackOverflow https://stackoverflow.com/questions/1423889

Question

ECMAScript 5 est en version finale brouillon au moment où j'écris ceci; Il est prévu d'inclure un mode strict qui vous empêchera d'affecter à l'objet global, d'utiliser eval et d'autres restrictions. ( L'article de John Resig est une bonne introduction.)

Ce mode d’économie d’esprit magique est déclenché par l’inclusion de la chaîne "use strict". en haut de votre fichier (ou de votre fonction). Cependant, dans les environnements plus anciens, utilisez "strict". est un no-op. Si vous ajoutez " utilisez strict " et ne le testez pas dans un environnement strict, vous risquez de laisser une bombe à retardement de code pas très strict qui se cassera sous l'effet d'un environnement strict.

Quels environnements respectent réellement l'utilisation "stricte"?

Était-ce utile?

La solution

Mettre à jour :

Voir mon tableau de compatibilité .

Réponse d'origine :

Aucun pour l'instant.

Raphael Speyer travaillait sur la mise en œuvre de Mozilla pour Rhino cet été et, dans les faits, sa mise en œuvre est assez proche. à compléter.

Je sais (d'après les informations provenant d'ES-discussion liste) que Microsoft envisage d'inclure certaines des fonctionnalités ES5 dans les versions à venir d'IE et qu'elles pourraient très bien travailler sur la mise en œuvre en mode strict à présent (comme vous le savez probablement, IE8). inclut déjà certaines fonctionnalités ES5, telles que Object.defineProperty ).

Il existe également un projet Caja de Google qui émule un peu le comportement du mode strict dans certains ses variations (Valija, Cajita, etc.).

Crockford a récemment ajouté cette option à JSLint , mais je ne suis pas sûr que ce soit réellement le cas. déclenche toute validation supplémentaire (selon les règles strictes de ES5).

Autres conseils

Maintenant qu'il est commercialisé, Firefox 4 est le vainqueur du "premier navigateur à prendre en charge le mode strict ES5". Vous pouvez maintenant commencer à l'utiliser, à condition de tester dans Firefox 4.

Safari 5.1+ et Chrome 13+ prennent également en charge le mode strict.

Le premier est dans: Besen . Implémenté dans Delphi. Je pense que c'est autonome, mais je ne suis pas sûr. Mais il supporte le mode strict.

Trouvé via cette table de compatibilité .

Jurassic prétend prendre en charge le mode strict ES5.

Le mode strict ECMAscript 5 requiert ces versions pour les principaux navigateurs (ou version ultérieure):

Chrome 13.0
Safari 5.1
Firefox 4.0
Internet Explorer 10.0
Opera 11.6

Non, IE9 n'est pas pris en charge de manière stricte, il est nouveau dans la version 10 ou ultérieure.

Opera 11.60 supporte déjà pleinement ECMAScript 5.1 et sa variante stricte en mode. Voir le tableau de compatibilité @kangax.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top