2013-04-08 2 views
0

J'ai créé une application web qui fonctionne très bien sur Chrome, Firefox, Safari et Internet Explorer Très bien 9, mais bien sûr le javascript échoue sur Internet Explorer 8.IE8 Javascript Syntaxe Bugs

Est-ce que quelqu'un connait un bon ressource pour montrer quelles sont les différences de syntaxe entre IE8 et le reste des navigateurs lorsque nous code?

Par exemple, j'ai trouvé dans IE8, ce type de javascript provoque l'application Web pour briser, mais fonctionne très bien en chrome, etc.

var model = new Model({ 
    'FirstName':'Trevor', 
    'LastName':'Evans',   <-- Extra , causes IE8 to break 
}); 

Des choses comme ça ...

Merci!

Répondre

1

Les virgules de fin dans un objet JavaScript étaient illégales avant ES5 (more info).

Plus simplement, ne pas utiliser de fuite des virgules, sauf si vous êtes dans un navigateur qui prend en charge ES5, il n'y a pas vraiment bonne façon que vous pouvez détecter ES5, vous pouvez rechercher le soutien de la fonction use strict avec quelque chose comme ceci:

var supportUseStrict = (function() { 'use strict'; return !this; })(); 

Depuis dans les navigateurs qui prennent en charge le mode strict vous aurez undefined retourné pour this mais dans les navigateurs qui ne supportent pas ce sera window;

+0

merci pour vos commentaires. Mais je cherche d'autres exemples. Les virgules sont juste un exemple ... –

+0

@TylerEvans: Je ne connais pas d'autres exemples. – SLaks