34 votes

Quels environnements (javascript) supportent le mode strict ECMAscript 5 (alias "use strict") ?

ECMAScript 5 est dans sa version finale au moment où j'écris ces lignes ; Il est prévu d'inclure un mode strict qui vous empêchera d'assigner à l'objet global, d'utiliser eval, et d'autres restrictions. ( Article de John Resig est une bonne introduction).

Ce mode magique d'économie d'esprit est déclenché par l'inclusion de la chaîne "use strict" en haut de votre fichier (ou de votre fonction). Si vous ajoutez "use strict" et que vous ne le testez pas dans un environnement strict, vous risquez de laisser une bombe à retardement de code pas vraiment strict qui se cassera lorsqu'il sera vraiment dans un environnement strict.

Quels sont les environnements qui respectent réellement "l'usage strict" ?

26voto

kangax Points 19954

Mise à jour :

Voir mon tableau de compatibilité .

Réponse originale :

Aucun pour l'instant.

Raphael Speyer était travailler sur l'implémentation de Mozilla pour Rhino pendant cet été et, à ma connaissance, leur mise en œuvre est presque terminée.

Je sais (d'après des informations provenant de la liste ES-discuss) que Microsoft prévoit d'inclure certaines des fonctionnalités de l'ES5 dans les prochaines versions d'IE et qu'ils pourraient très bien être en train de travailler sur l'implémentation du mode strict en ce moment même (comme vous le savez probablement, IE8 inclut déjà certaines des fonctionnalités de l'ES5, par exemple Object.defineProperty ).

Il y a aussi Le projet Caja de Google qui émule quelque peu le comportement du mode strict dans certaines de ses variantes (Valija, Cajita, etc.).

Crockford a également ajouté récemment cette option à JSLint mais je ne suis pas sûr que cela déclenche réellement des validations supplémentaires (conformément aux règles strictes de l'ES5).

12voto

Sean McMillan Points 5096

Maintenant qu'il est sorti, Firefox 4 est le gagnant du titre de "premier navigateur à supporter le mode strict ES5". Vous pouvez maintenant commencer à l'utiliser, à condition de le tester dans Firefox 4.


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


Le premier est entré : Besen . Mis en œuvre dans Delphi. Je pense qu'il est autonome, mais je ne suis pas sûr. Mais il supporte le mode strict.

Trouvé via ce tableau de compatibilité .


Jurassic prétend supporter le mode strict ES5.

9voto

Lee Whitney Points 3570

Le mode strict ECMAscript 5 nécessite ces versions pour les principaux navigateurs (ou plus) :

Chrome 13.0
Safari 5.1
Firefox 4.0
Internet Explorer 10.0
Opera 11.6

Non, IE9 n'a pas de support strict, c'est nouveau pour la version 10 ou plus.

1voto

marcioAlmada Points 1880

Opera 11.60 prend déjà entièrement en charge ECMAScript 5.1 et sa variation en mode strict. Voir le tableau de compatibilité de @kangax.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X