Erreur javascript 'expected identifier, string or number' sous IE

Dernièrement, après une mise à jour mineure, des personnes utilisant Internet Explorer se sont plaintes d'un fonctionnement anormal du site sur http://www.apyro.com . Internet Explorer m'a rapidement informé de la nature de l'erreur de façon très claire comme à son habitude : 'expected identifier, string or number'. Firefox, Chrome, Opera et Safari ne présentent aucune erreurs sur les pages affectées sous IE.

Le code posant problème est le suivant :

var Config = {
urlAppend : '',
}

En fait en PHP j'ai pris l'habitude de toujours mettre la virgule de séparation même à la fin du dernier champs afin d'éviter de l'oublier lors de l'ajout d'un élément en fin de tableau par exemple.

$tableau = array(
1 => 'hello',
2 => 'world',
);

Cela ne pose bien entendu aucun problème à PHP. Cela ne pose d'ailleurs aucun problème non plus en javascript avec la plupart des navigateurs mais bien entendu il faut que cela coince sous IE (6 & 7, je n'ai pas testé avec IE8) ...

Pour une fois heureusement la solution ne nécessite pas de hack ou autre supercherie, il suffit de retirer la dernière virgule et tout rentre dans l'ordre.

var Config = {
urlAppend : ''
}

J'espère que cela permettra à certains d'éviter de perdre trop de temps à débugger cette erreur.

Comments

Merci BEAUCOUP ! Cette page m'a sauvé la vie alors que je ne comprenais pas pourquoi IE7 refusait de me lancer un script qui était lancé sans AUCUN problème par tous les autres navugateurs (même IE6 !!). Encore une fois, merci beaucoup !
Site web: 
http://www.mickael-goetz.com

Merci, ça m'a bien aidé ! J'avais laissé trainé une virgule dans mon code jQuery. Franck.
Site web: 
http://web-de-franck.com

Merci pour ce post, ca m'a bien fait gagner du temps pour comprendre ce qui clochait sur mes sites. Surtout que je déprime quand je vois encore plus de 15% d'utilisations de ces vieux browsers (IE7, IE6 ...) sur mes sites, alors que ca ne marchait pas jusqu'à maintenant ...
Site web: 
http://www.legraindeweb.fr

Add new comment

(Non publié)