6

fileReaderに関するドキュメントを読むと、次のようにvoid演算子を使用してメソッドを記述していることがわかります。

void readAsArrayBuffer (
        in Blob blob
);

なぜ彼らがこのように書くのか理解しようとしているだけですか?この構文の実用的な用途がある場合は?

後で、js ではなく、Interface Description Language である IDL であることが判明しました。

参考までに: この質問をする前に、Google で JS の実際の void 演算子について調べました。ですから、私に戻ってくる必要はありません。少し曖昧な質問ですが、対処する必要があります。なぜ Mozilla は JavaScript に関するドキュメントをこのように書いているのでしょうか? 実際の JavaScript が少ない IDL では?

4

1 に答える 1

4

Mozillaは2つの方法でIDLを使用しています

  • Web IDL:JavascriptAPIを記述するためにW3C仕様などで使用されます。これらは標準的な仕様です。

  • XPCOM内部IDL方言:ネイティブJavascriptAPIはC++で実装されています。Gecko(Firefoxのエンジン)の場合、特にXPCOMと呼ばれるドメイン固有のフレームワークの場合

リンク先のページにあるように、Geckoは言語に依存しないIDL方言でインターフェースを内部的に記述しています。これらのインターフェースは、ネイティブランタイム(C ++)とJavascriptエンジン(Javascript)の両方で実装する必要があるためです。

この場合、IDL記述は、元のWebIDL仕様またはGeckoの内部実装からのコピーアンドペーストです。

于 2012-12-11T21:45:59.923 に答える