1

Reflect.parseFirefoxのJavaScriptで使用したい。

MDNは、これを経由してグローバルオブジェクトにインポートすると言います

Components.utils.import("resource://gre/modules/reflect.jsm")

ただし、これにより次のエラーメッセージが表示されます。

Error: Permission denied for <file://> to get property XPCComponents.utils

Firefox11とAuroraでこれを試しました。

どうすればアクセスできますReflect.parseか?

編集:

エラーメッセージは、次のフラグメントが原因です。

Component.utils
4

1 に答える 1

1

この問題の根本的な解決策はありません。控えめに言っても、wikiのドキュメントは誤解を招くものです。Reflect.parse

SpiderMonkey/Firefox で「純粋な」JavaScript ソリューションが必要な場合は、に依存しないでくださいReflect.parse

多くのプロジェクトでNarcissusのパーサーを使用していますが、私も同じようにするべきでした。

編集: Esprimaプロジェクトは、Mozilla Parser API の優れた実装です。Reflect.parse150 以上のテスト ケースをすべて置き換えた後も、式esprima.parseのような非標準の SpiderMonkey 拡張機能を扱う 5 つほどを除いて、まだ緑色のままでしたlet(これはかなり印象的です)。

于 2012-04-21T06:45:50.033 に答える