9

DOMParser オブジェクトを使用して、テキスト文字列を XML ツリーに解析しています。ただし、Web Worker のコンテキストでは使用できません (もちろん、document.ELEMENT_NODE や必要なその他のさまざまな定数も使用できません)。それを行う他の方法はありますか?

現在のページの DOM を操作したくないことに注意してください。XML ファイルには、HTML 要素などは含まれません。実際、文書オブジェクトにはまったく触れたくありません。次のようなテキスト文字列を提供したいだけです。

<car color="blue"><driver/></car>

...そして、適切なツリー構造とそれをトラバースする方法を取得します。また、スキーマの検証や空想的なことも気にしません。<SCRIPT> の XML については知っていますが、これは多くの人に役立つと思われます (したがって、ここにリンクしています) が、そのライセンスは私にはあまり適していません。jQuery に XML パーサーが含まれているかどうかはわかりませんが (私はこのようなことにかなり慣れていません)、含まれていたとしても (そして Worker 内で使用できます)、余分な ~50K 行のコードを含めることはしません。この機能。

JavaScript で単純な XML パーサーを作成できると思いますが、もっと迅速なオプションがないかどうか疑問に思っています。

4

2 に答える 2

7

スペック通り

この仕様のこのバージョンでは、ワーカーは DOM API (Node オブジェクト、Document オブジェクトなど) を使用できません。

それがDOMParserが利用できない理由だと思いますが、なぜその決定が下されたのかよくわかりません。(WebWorker で XML ドキュメントを取得して処理することは、理不尽ではないようです)

ただし、利用可能な他のツールをインポートできます: 「JavaScript でのクロス プラットフォーム XML 解析」

于 2012-06-25T09:19:21.943 に答える