Les gars, j'ai quelques questions:
- Existe-t-il une différence de performances en JavaScript entre une
switch
instruction et unif...else
? - Si oui, pourquoi?
- Le comportement
switch
et le comportement desif...else
navigateurs sont-ils différents? (FireFox, IE, Chrome, Opera, Safari)
La raison pour laquelle je pose cette question est qu'il semble que j'obtiens de meilleures performances sur une switch
déclaration avec environ 1000 cas dans Firefox.
Edité Malheureusement ce n'est pas mon code, le Javascript est en cours de production depuis une bibliothèque compilée et je n'ai pas accès au code. La méthode qui produit le javascript est appelée
CreateConditionals(string name, string arrayofvalues, string arrayofActions)
note arrayofvalues
est une liste séparée par des virgules.
ce qu'il produit est
function [name] (value) {
if (value == [value from array index x]) {
[action from array index x]
}
}
Remarque: où [name]
= le nom passé dans la fonction côté serveur
Maintenant, j'ai changé la sortie de la fonction à insérer dans un TextArea, j'ai écrit du code JavaScript pour analyser la fonction et je l'ai converti en un ensemble d' case
instructions.
enfin je lance la fonction et elle fonctionne bien mais les performances diffèrent dans IE et Firefox.