2013-03-29 11 views
10

Czy istnieje narzędzie do skanowania mojego kodu JavaScript w poszukiwaniu funkcji, które mogą nie być dostępne we wszystkich przeglądarkach?Skanowanie kodu JavaScript pod kątem zgodności z przeglądarką

Moja biblioteka jest całkowicie niezgodna z interfejsem użytkownika, więc nie obchodzi mnie, jak coś jest "wyświetlane". To, czego szukam, to coś podobnego do Javascript MDN z Mozilli. Na przykład dla obiektu Array.prototype.indexOf ostrzegają, że jest to ostatnie dodanie ECMAScript, które nie występuje we wszystkich przeglądarkach (i zazwyczaj udostępnia kod pośredniczący). To, czego szukam, to narzędzie, które wyświetli funkcje w moim kodzie, które należą do tej kategorii.

+0

To będzie bardzo przydatne. Ulubione. – techfoobar

+2

Nieco trudny, z nietekstowym językiem. – Thilo

+0

[JSLint] (http://www.jslint.com/) będzie mierzyć jakość twojego kodu i ostrzegać cię o typowych błędach, ale nie jestem pewien, czy osiągnie to, co twoja po. –

Odpowiedz

3

Nie ma takiego narzędzia i istnieje a lot of browsers.

Wydaje mi się, że istnieje alternatywne podejście do skanowania kodu pod kątem zgodności z "wszystkimi" przeglądarkami, chociaż naprawdę byłoby to przydatne. Większość ludzi robi następujące dwie rzeczy, aby zapewnić pewien stopień kompatybilności z różnymi przeglądarkami.

użyć biblioteki

Można korzystać z biblioteki jak underscore.js, jQuery, Dojo, Modernizr itp że niezgodności przeglądarki okład dla Ciebie. Możesz więc na przykład użyć jQuery.inArray, który będzie działać we wszystkich przeglądarkach, które jQuery obejmuje ze wspólnym interfejsem, którego możesz użyć.

wsparcie Limit Przeglądarka

Zdecyduj, które przeglądarki chcesz obsługiwać z aplikacji, stan ten na swojej stronie internetowej, a następnie przetestować w tych przeglądarkach. Albo natywnie, jeśli je masz, albo użyj czegoś podobnego do przeglądarki, aby przeprowadzić testy dla przeglądarek, których nie masz. This answer podaje również więcej alternatyw dla tego.

I na koniec są najlepsze praktyki i osobiste doświadczenia, na których można polegać podczas pisania kodu.

+0

oczywiście mogę ograniczyć wsparcie, ale szczególnie dla bibliotek nie-graficznych, które po prostu wydają się złym wyborem. A jeśli chodzi o biblioteki, jeśli chcę opublikować swój własny kod (bibliotekę), będę musiał dodać go jako zależność i jeśli w jakikolwiek sposób będę chciał tego uniknąć. Zwykle mają one o wiele więcej niż potrzebuję, a nawet jeśli obsługują niestandardowe kompilacje, nadal będę musiał dowiedzieć się, czego dokładnie potrzebuję. –

+0

Oczywiście możliwe jest unikanie zależności od bibliotek. Będziesz wtedy musiał wykonać swoją pracę ponownie/skopiować kod, który imho jest gorszy niż zależność od dobrze utrzymanej biblioteki. Ale nawet jeśli to zrobisz, jestem pewien, że twoja biblioteka nie obsługuje przeglądarki Mosaic lub niektórych specjalnych przypadków. – migg

+0

Ale tak jak powiedziałem, to musiałbym dowiedzieć się, które funkcje dokładnie muszę pokryć. I tak, nie jestem do końca szczęśliwy, że się polifilizuję, ponieważ jest to "brud" do mojej własnej biblioteki. Ale jeśli to tylko Array.prototype.indexOf, wolałbym go dodać, niż wymagać całej biblioteki innej firmy. Nawet dla celów informacyjnych interesujące byłoby dla mnie narzędzie tego rodzaju, którego szukam. –

1

Aktualizacja:

Lepiej lub gorzej, kontroler nie jest już dostępne.


Poszukiwanie samo pytanie (kolejne kilka lat), wpadłem na Javascript sprawdzanie zgodności.

Dało mi to wskazówkę, jak kompatybilny jest mój skrypt z głównymi przeglądarkami.

+0

Dzięki! Niestety szybki test z wykorzystaniem notacji strzałkowej i podobnych raportów jako "nie znaleziono żadnych problemów", które uważam za mało prawdopodobne. –

+0

@ IngoBürk Rzeczywiście ma on sens nowego początku, ale może ewoluować w konsekwencji. – raratiru

+0

@raratiru Link zepsuty. – crantok

Powiązane problemy