Chłopaki mam kilka pytań:
- Czy istnieje różnica wydajności w JavaScript między
switch
instrukcją a instrukcjąif...else
? - Jeśli tak, dlaczego?
- Czy zachowanie
switch
i jestif...else
różne w różnych przeglądarkach? (FireFox, IE, Chrome, Opera, Safari)
Powodem zadawania tego pytania jest to, że wydaje mi się, że osiągam lepszą wydajność na switch
wyciągu z około 1000 przypadków w przeglądarce Firefox.
Edytowane Niestety to nie jest mój kod, Javascript jest tworzony na serwerze poza skompilowaną biblioteką i nie mam dostępu do kodu. Wywoływana jest metoda, która tworzy skrypt javascript
CreateConditionals(string name, string arrayofvalues, string arrayofActions)
uwaga arrayofvalues
jest listą oddzieloną przecinkami.
to, co produkuje
function [name] (value) {
if (value == [value from array index x]) {
[action from array index x]
}
}
Uwaga: gdzie [name]
= nazwa przekazana do funkcji po stronie serwera
Teraz zmieniłem dane wyjściowe funkcji, która ma być wstawiona do TextArea, napisałem kod JavaScript do analizy funkcji i przekonwertowałem go na zestaw case
instrukcji.
wreszcie uruchamiam tę funkcję i działa dobrze, ale wydajność różni się w IE i Firefox.