公式のJavaScriptリファレンスがないのはなぜですか?[閉まっている]


90

JavaScriptリファレンスを検索しようとしましたが、何もありません。推奨される最高のソースは、MDN(Mozilla Developer Network)とW3Schoolsです。

どうして?


54
w3schoolsは避けてください。そのJS資料は非常に貧弱になる傾向があります。
NickFitz

1
すみません、MDCを意味していました。developer.mozilla.org/en/About_JavaScript
2009年

9
これはランダムなコメントのようなものですが、個人的には、すべてのブラウザがすべてのJavaScript / Jscriptの基本的な機能を廃棄し、jQueryをネイティブに実装する必要があると思います。:)
DisgruntledGoat

14
DOMを介したjQueryの壁紙ですが、実際にはJavaScriptの代わりにはなりません。
Rob

2
@huy MDN、MDCまたはMDEではない
maan81

回答:


63

公式のJavaScriptリリースがあるようではありません。すべてのブラウザが独自のJavaScriptエンジンを作成しています-一部のブラウザは同じものを使用しています。ただし、特にInternet Explorerには独自のバージョンがあり、他のブラウザーがサポートするものの多くをサポートしていないため、一般的なJavaScript参照を作成することは非常に困難です。

編集:
私は公式のECMA標準と開発チームがあることを知っていますが、ブラウザー(Internet Explorer)がそれに対応しない限り、それは実際には重要ではないということがポイントです。結局、クライアントはJavaScriptがInternet Explorerでも機能することを望んでいます。彼らはECMA標準を気にせず、それが機能することを望んでいます。ここでJavaScriptライブラリーが登場しますが、それはまた別の話です。

これはHTMLとCSSの問題と同じです。これらのツールをアクティブな開発に使用することはできません。

  • すべてのブラウザがそれらをサポートしています。
  • ブラウザにコードを提供して、それをサポートします。
  • すべてのブラウザで機能するとは限りません。

Edit2:
Internet Explorerは、Microsoftの新しいブラウザープロジェクトであるEdgeにより、深刻な問題に近づいています。ただし、これで全体像が変わるわけではありません。サポートする必要のある別のブラウザーがあれば、まだたくさんあります。開発者は常に、可能なことの境界を押し広げようとしています。これは、この問題が頻繁に発生することを意味します。サポートする一部のブラウザーバージョンは、標準の一部の機能(通常は少し流動的です)をサポートしていません。つまり、いくつかの回避策を講じるか、不足している機能で。


私が知っているように、マイケルが前述したECMA-262標準に従って、異なるブラウザが独自の実装を持っていますか?
2009年

3
@huy:はい-その標準のさまざまなレベルのサポートのサポート/さまざまな解釈がありますが、悲しいことに...
Andrzej Doyle

1
-1、そこそれはECMAスクリプトと呼ばれていますし、その背後にある公的機関があります::公式のJavascriptの標準en.wikipedia.org/wiki/Ecma_International
HASEN

他のブラウザーと同じようにECMAの「標準」をサポートするのがもっと悪いとInternet Explorerを選んだ理由がわかりません。

5
@ראובן:だった/だったから。長い間、IEには他のブラウザーにはない重大なバグが数多くあっただけでなく、他のブラウザーにある重要な機能が欠けていました。IE8と9はかなり追いついてきたので、状況は変化しています。しかし、長年にわたってIEは恐ろしいものでしたが、他のブラウザーはECMAScriptを適切にサポートしていました。さらに、ECMAScript 標準です。なぜそれを引用符で囲んだのかわかりません。
パウアン

28

公式ECMAscriptサイトで試すことができます。

http://www.ecmascript.org/

しかし、実際に役立つのは、各ブラウザーの実装です。

私は、ダニーグッドマンのJavaScript聖書のこのチートシートがとても気に入っています。

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


そのチートシートは死んでいます。caniuse.comを勧めますか?
Grinn 2013

ありがとう、私は新しいリンクにリンクし、それが何であるかを少し説明しました。ヘッドアップをありがとう!
ビクター

いいですね、チェックします。
グリン2013

22

これは「公式」だと思いますhttps : //developer.mozilla.org/en/JavaScript

あなたはまた、持っているのECMAScript言語仕様、5.1版 (またはとしてPDF、決定的な仕様)

Microsoftから:JavaScript言語リファレンス:「このドキュメントは、ECMAScript 5th Edition言語仕様に準拠したJavaScriptMicrosoft実装について説明しています。ECMA標準に含まれていない追加機能も提供します。」


8
IEにはJavaScriptエンジンがありません-代わりにJScriptを実装しています(これはほとんど互換性があります)。msdn.microsoft.com/en-us/library/yek4tbz0%28VS.85%29.aspxは、公式リファレンスのようです。
クエンティン、

3
うーん... developer.mozillaは非常に役立ちますが、「公式」とは言いません。ECMAScript言語仕様は「公式」に近いものです。
スティーブハリソン

4
ECMAScript言語仕様はECMAScriptの公式リファレンスです。JavaScriptはECMAScriptのスーパーセットであり、Netscapeによって作成され、MozillaはNetscapeからMDCを継承しています(その後、名前は変更されています)
Quentin

ECMAScript標準の場合は+1。
Jason S

@Quentin-おもしろいのは、あなたが参照するMSDNリンクのタイトルが"JavaScript Reference"になっていることです。ただし、MSDNの記事「JScript(ECMAScript3)」には、次のように記載されています。 ECMA標準。」
DavidRR 2014年

8

ECMAScriptをWeb(99.9%の人)に使用している場合、言語の基本的な構文(上記のECMA-262仕様で説明されています)を超えて、おそらくDOM参照を探しています-これは、Webドキュメントとの対話に使用されるECMAScript APIです。

誰もDOM APIソファーについて言及しなかったので、私は非常に驚いています。現在のW3C DOM標準はこちらです:http : //www.w3.org/TR/DOM-Level-2-Core/

(ところで、命名の混乱については-ECMAScriptは公式標準の名前であり、「Javascript」と「JScript」はNetscapeとMicrosoft独自の「フォーク」です)


3

公式リファレンスがありますが、それは非常に便利な形式ではありません。それはECMA-262仕様。これは、検索可能な一連のHTMLページではなく、単一の非常に大きなPDFドキュメントです。


3

Mozilla Documentationチームのメンバー(Eric Shepherdなど)によるMDC上JavaScriptページの改訂はすべて公式です。JavaScriptはMozillaによって公式に保守されているため、Mozillaによるドキュメントのみが公式です。JavaScriptをサポートする唯一のエンジンは現在Mozillaによって作成されており、他のすべてのエンジンはECMAScriptを実装しています。JavaScriptとECMAScriptにはかなりの違いがあります(たとえば、素晴らしいステートメント)。let


3

(すべてのブラウザに)実装があり、仕様(ECMAScript)があるが、仕様に対する実装の適合性テストがない限り、「公式の」参照を持つことは非常に困難です。

しかし現在、EMCAScript 5適合スイートはhttp://es5conform.codeplex.com/にあります。ECMAScriptの実装が互いに近づき、ECMAScriptが言語の公式リファレンスになる可能性が高まるという見解が一致しているようです。


2

古い学校のNetscape 4 JavaScriptドキュメントは、この目的に非常に役立ちます。それらは明らかに完全に古くなっており、レイヤーなどのDOM機能の一部は古くなっていますが、言語の基礎としては非常にしっかりしています。

これは、IEの覇権とECMAの標準化が行われる以前は、NetscapeのJavaScriptが最も信頼できるJavaScriptであったためです。他のブラウザーは、それらの古いドキュメントに表示されるものを正確に実装する必要がほとんどありました。

それらはECMA-262ドキュメントよりもはるかに読みやすく、標準のドキュメントの基準によってさえ、それは絶対的な恐怖です。


1

ウィキペディアの引用:

Netscapeの始まり

1996年11月、NetscapeはJavaScriptをEcma Internationalに提出しました...

JavaScriptはMozilla Foundationによって正式に管理されています...

したがって、私の意見では、ECMAが標準であり、Mozillaが公式のものです。


0

「公式」とは、「JavaScriptの責任者が書いた」という意味だと思います。

本当にここで推測しているだけですが、JavaScript(ECMA)の責任者はそれから直接お金を稼いだり、参照ドキュメントを書くのに特別なスキルを持っていない可能性があります。ですから、彼らは良い参考文献を書くインセンティブも能力も持っていません。

個人的に、私はJavaScriptが好きです: O'Reillyの決定的なガイド。11月には第6版が発行されます。


2
はい、そうです。SunはJavaScriptの商標を所有していますが、Netscapeにライセンス供与しています。OracleはSunを買収したため、現在Oracleは商標を所有しています(まだMozillaにライセンスしています)。HTMLとCSSはW3Cによって定義されているため、別の問題です。FirefoxのJSエンジンには、他のブラウザーにはない独自の(そして素晴らしい)機能が数多く含まれています。JavaScriptの作成者(Brendan Eich)は、公式のECMAScript委員会に所属しており、Mozillaでも働いています。
パウアン

1
さらに、このリンクに注意してください:en.wikipedia.org/wiki/ECMAScript#Dialects Firefoxには「JavaScript 1.8.5」と呼ばれるものがあり、すでに述べたように、オブジェクト/配列の破壊/理解など、他のブラウザーにはない高度な機能が多数含まれています、ジェネレーター/イテレーター、letブロック/ステートメントなど。リンクの2番目の脚注にも注意してください。「MozillaはJavaScriptの公式バージョンを管理しています。JavaScriptの「準拠」を主張するほとんどの非Mozilla実装は、実際にはほとんどのJavaScript拡張機能をサポートしていません。むしろ、ECMA-262エディション3を対象としています。」
パウアン

1
ECMAScriptはJavaScriptとは異なります。ECMAScriptはEcmaによって定義された標準です。ブラウザーは通常、ECMAScript標準のサポートに関してかなり優れており、ほとんどの人が "JavaScript"と言うとき、ブラウザーが実際に意味するのはECMAScriptです。状況と用語が非常に混乱しているのは残念ですが、それはあります。そのため、ほとんどの場合、JavaScriptの非公式な定義は「ブラウザが行うことは何でも」ですが、公式には、Mozillaが実際にその責任を負っています。
パウアン

1
つまり、「公式のJavaScriptリファレンス」を求める質問は、曖昧すぎて正確に答えることができません。あなたは公式のECMAScript標準、ブラウザでのJavaScriptの実際の実装、MDC(Firefoxでの公式のJavaScript実装をカバーしています)、そしてもちろんw3schoolsのような非常に人気のある非公式のドキュメントを持っています。すべてが有用であるため、Pythonなどの「単一の正しい」参照は実際にはありません。
パウアン2011

2
(おそらく、これを一連のコメントではなく、実際の回答として投稿するべきでした...まあ)
Pauan

-1

Daniel Krookのapidocは、いくつかの説明や例を使用することもできますが、本当に気に入っています。私は本当にkrook w3schoolマッシュアップを見たいです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.