Dlaczego nie ma oficjalnego odniesienia do JavaScript? [zamknięte]

Próbowałem szukać odniesienia do JavaScript, ale nie ma żadnych dostępnych. Dwa najlepsze sugerowane źródła to MDN (Mozilla Developer Network) i W3Schools.

Dlaczego?

Author: Alfonso Lamadrid, 2009-10-22

11 answers

To nie jest oficjalne wydanie JavaScript. Wszystkie przeglądarki stworzyły własny silnik JavaScript - niektóre używają tego samego. Ale szczególnie Internet Explorer ma swoją własną wersję, która nie obsługuje wiele z tego, co inne przeglądarki obsługują, co bardzo trudne do ogólnego odniesienia JavaScript.

Edit:
Chociaż wiem, że istnieje oficjalny standard i zespół programistów ECMA, chodzi mi o to, że tak naprawdę nie ma to znaczenia tak długo, jak przeglądarki (Internet Explorer) nie spełnia. W końcu klienci chcą, aby JavaScript działał również w Internet Explorerze. Nie dbają o standardy ECMA, po prostu chcą, aby to działało. W tym miejscu pojawiają się biblioteki JavaScript, ale to już inna historia.

To te same problemy z HTML i CSS, nie możemy używać tych narzędzi do aktywnego rozwoju, dopóki:

  • wszystkie przeglądarki je obsługują.
  • dostarczamy przeglądarkom kod umożliwiający ich obsługę to.
  • W porządku, że nie działa we wszystkich przeglądarkach.

Edit2:
Internet Explorer zbliża się do grobu z nowym projektem przeglądarki od Microsoftu: Edge. To jednak tak naprawdę nie zmienia ogólnego obrazu. Nadal mamy wiele, jeśli różne przeglądarki musimy wspierać. Deweloperzy nieustannie próbują przesuwać granice tego, co jest możliwe. Oznacza to, że często mamy ten problem, niektóre wersje przeglądarki, które chcemy obsługiwać, nie obsługują niektórych cecha standardu (który zwykle jest nieco płynny), co oznacza, że musimy obejść pewne obejście lub użyć frameworków, które implementują brakujące wbudowane funkcje.

 58
Author: googletorp,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-01 09:11:27

Możesz spróbować na oficjalnej stronie ECMAscript,

Http://www.ecmascript.org/

Ale przydatną rzeczą jest właściwie implementacja każdej przeglądarki.

Bardzo podoba mi się ten cheatsheet z Biblii JavaScript Danny ' ego Goodmana:

Http://media.wiley.com/product_ancillary/12/04705269/DOWNLOAD/9780470526910_Appendix_A.pdf

 28
Author: Victor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-14 21:19:20

Powiedziałbym, że ten jest "oficjalny": https://developer.mozilla.org/en/JavaScript

Masz również specyfikacja języka ECMAScript, Wydanie 5.1 (lub jako PDF , ostateczna Specyfikacja) .

I od Microsoft: JavaScript Language Reference: "ta dokumentacja wyjaśnia implementację JavaScript firmy Microsoft, która jest zgodna ze specyfikacją języka ECMAScript 5th Edition . Zapewnia również dodatkowe funkcje, które nie są zawarte w standardach Ecma."

 18
Author: Espo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-12 16:38:22

Jeśli używasz ECMAScript w Internecie (którym jest 99,9% osób), to poza podstawową składnią języka (opisaną we wspomnianej powyżej specyfikacji ECMA-262), prawdopodobnie szukasz referencji DOM - czyli interfejsu API ECMAScript używanego do interakcji z dokumentami internetowymi.

Jestem bardzo zaskoczony, że nikt nie wspomniał o DOM API sofar. Aktualny standard W3C DOM jest tutaj: http://www.w3.org/TR/DOM-Level-2-Core/

(btw, co do mylenia nazewnictwa - ECMAScript to nazwa oficjalnego standardu, a "Javascript " i" JScript " to "forki"Netscape i Microsoft)

 6
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-11-13 23:50:14

Jest oficjalne odniesienie, po prostu nie jest w bardzo wygodnym formacie. Jest to specyfikacja ECMA-262 . Jest to pojedynczy, bardzo duży dokument PDF, zamiast przeszukiwalnego zestawu stron HTML.

 2
Author: Michael Aaron Safyan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-22 10:05:09

Uważam, że Oldskulowy Netscape 4 JavaScript docs jest bardzo przydatny do tego celu. Chociaż są one oczywiście całkowicie przestarzałe, a niektóre funkcje DOM w nich, takie jak warstwy, już dawno odeszły, jak na podstawy języka są naprawdę solidne.

To dlatego, że przed dniami supremacy IE i Standaryzacji ECMA, JavaScript Netscape był definitywny JavaScript. Inne przeglądarki musiały zaimplementować dokładnie to, co widzisz w tych starych docs.

Są też znacznie łatwiejsze do odczytania niż dokument ECMA-262, który nawet jak na standardy dokumentów norm jest absolutnym horrorem.

 2
Author: bobince,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-22 12:05:19

Wszelkie poprawki stron JavaScript na MDC przez członka zespołu dokumentacji Mozilli (jak Eric Shepherd) są oficjalne. JavaScript jest oficjalnie utrzymywany przez Mozillę, więc oficjalna jest tylko dokumentacja Mozilli. Jedyne silniki obsługujące JavaScript są obecnie tworzone przez Mozillę i każdy inny silnik implementuje ECMAScript. JavaScript i ECMAScript mają sporo różnic (na przykład instrukcja awesome let).

 2
Author: Eli Grey,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-23 01:41:06

Bardzo trudno jest mieć "oficjalne" odniesienie, o ile istnieją implementacje (we wszystkich przeglądarkach) i istnieje Specyfikacja (ECMAScript), ale nie ma testów zgodności implementacji ze specyfikacją.

Teraz mamy EMCAScript 5 conformance suite w http://es5conform.codeplex.com/ - i wydaje się, że istnieje konsensus co do tego, że implementacje ECMAScript zbliżą się do siebie, co sprawia, że ECMAScript jest bardziej prawdopodobnym oficjalnym punktem odniesienia dla język.

 2
Author: user195021,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-23 01:52:46

Przez "oficjalny", myślę, że masz na myśli "napisane przez ludzi odpowiedzialnych za JavaScript".

Po prostu spekuluję tutaj naprawdę, ale ludzie odpowiedzialni za JavaScript (ECMA) nie zarabiają na tym bezpośrednio, i prawdopodobnie nie mają żadnych szczególnych umiejętności w pisaniu dokumentacji referencyjnej. Nie mają więc ani motywacji, ani zdolności do napisania dobrej referencji.

Osobiście lubię JavaScript: the Definitive Guide od O ' Reilly. Jest szósta edycja wychodzi w listopadzie.

 1
Author: Paul D. Waite,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-08-18 11:00:53

Bardzo mi się podoba Apidoc Daniela Krooka , chociaż przydałyby się jakieś wyjaśnienia i przykłady. Chciałbym zobaczyć krook w3school mashup.

 0
Author: Ben,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-11-13 23:58:20

Cytat z Wikipedii:

Początki w Netscape

W listopadzie 1996 roku Netscape przesłał JavaScript do Ecma Międzynarodowe ...

JavaScript jest oficjalnie zarządzany przez Mozilla Foundation ...

Moim zdaniem ECMA jest standardem, a Mozilla oficjalnym.

 0
Author: SandroMarques,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-25 10:28:09