2009-04-04 16 views
7

The Mozilla Foundation kontynuuje dodawanie nowych funkcji językowych do JavaScript. Są w wersji 1.8 teraz, gdzie 1.5 było mniej więcej ECMA baseline.Wersje JavaScript później niż 1.5 - dlaczego?

Jednak Firefox to only browser, który obsługuje najnowszą wersję, a IE jest mocno zablokowany w 1.5-ekwiwalentowym JScript.

Do czego służą rozszerzenia przeznaczone tylko dla Firefoksa? A może po prostu drzemią do czasu, aż (i jeśli) nadążą pozostałe przeglądarki?

Odpowiedz

5

Rozszerzenie języka jest dobrym pomysłem, nawet jeśli robi to tylko jedna przeglądarka - w końcu okaże się i stanie się standardem, kiedy inne przeglądarki będą musiały nadrobić zaległości.

W przeciwnym razie, jak można dokonać postępu - Microsoft robi to cały czas: czy XMLHttpRequest kiedykolwiek osiągnąłby standardy, gdyby Internet Explorer nie wdrożył go w pierwszej kolejności?

Z perspektywy Mozilli celem tych zmian, z wyjątkiem zwiększenia możliwości wykorzystania przez twórców stron internetowych, jest doprowadzenie do JavaScript 2.0, który jest rozwijany jako następna wersja ECMA 262 (wersja 4) TC39 workgroup.

Przyszłe przeglądarki będą obsługiwały JavaScript 2.0. W międzyczasie programiści są proszeni o skorzystanie z tych dodatkowych funkcji - natywnie w Firefoksie i przy użyciu bibliotek JavaScript, które zapewniają kompatybilność wsteczną z Internet Explorerem. Uważam to za bardzo przydatne.

Warto również zauważyć, że Webkit (silnik opracowany przez KDE i używany przez Safari, Chrome i kilka darmowych przeglądarek) obsługuje JavaScript 1.7.

+0

Możesz chcieć wyjaśnić, że Chrome ma własny aparat JavaScript, mimo że używa WebKit. Nie mogę wymyślić bezbłędnego sposobu, żeby to dodać. –

+0

@Guss - Tak, wiem, że Safari i Chrome są w wersji> 1.5, ale tak długo, jak IE utknie tam, nawet biblioteki, które zapewniają kompatybilność wsteczną, mogą po prostu wziąć prostą trasę i uniknąć nowych funkcji. Rozumiem potrzebę popychania technologii, po prostu zastanawiam się, jaka jest ścieżka do przodu. –

+0

Uważam, że jest to dobra ścieżka - potrzebna jest robocza implementacja standardu, zanim przejdzie się przez standardowe organy, najlepiej jeśli zostanie to zrobione we współpracy ze standardowymi organami. – Guss

7

Firefox, Thunderbird i inne aplikacje XUL również mają duże fragmenty napisane w JavaScript. Bardziej funkcjonalny JavaScript oznacza lepsze środowisko programistyczne dla Firefoksa i innych aplikacji Mozilli.

+0

Tak, piszę aplikacje xul i uwielbiam korzystać ze zrozumienia tablic Pythonic i innych zaawansowanych funkcji. To jest zajebiste. –

2

Najważniejszym powodem poprawy JavaScript w tej chwili jest dla autorów rozszerzeń, którzy nie muszą się martwić kompatybilnością z wieloma przeglądarkami.

0

JavaScript jest znakiem handlowym firmy Sun, który był licencjonowany dla Netscape i jest obecnie własnością Mozilla Foundation. Microsoft ma własną implementację języka o nazwie JScript, ale są też inne (np. DMDScript).

ECMAScript było dodatkową myślą o dodaniu wspólnej linii bazowej do różnych implementacji. Jest więc naturalne, że rozwój języka jest kontynuowany poza komitetem normalizacyjnym, który może dodawać zmiany wprowadzane przez implementatorów w przyszłych wersjach standardu (np. Dodatki do macierzy wprowadzone w JS1.6 będą w ES3.1).

+0

Tak, znam historię. Zastanawiam się tylko, kto użyje rozszerzeń tylko FF i dlaczego, ponieważ musiałbyś napisać kod zgodny z 1.5 dla przynajmniej IE, więc wróciłeś do miejsca, z którego zacząłeś. Odpowiedź Steven XUL jest jak dotąd najlepsza, choć spoza sfery stron internetowych. –

Powiązane problemy