2

開発者として、ここにいるのは私だけではないと確信しています。私は常に、「ボンネットの下」にあるものを理解したいと思っています。DOM パーサーは、私にとってこの好奇心のリストのトップの 1 つです。私たちは皆、有名な投稿を知っています。私はちょっとした「O RLY?」を一緒にハックしたことさえあります。、一時的な必要性と好奇心の両方から。

しかし、カーテンの後ろにいる男に会いたいという私の必要性は満たされていないままです. DOM パーサー、または構造化されたドキュメント パーサーはどのようにドキュメントを解析するのでしょうか? 私の中級 Web アプリケーション開発者の理解が集まる限り、それは再帰的な文字列解析と状態保持ロジックの組み合わせであり、私自身のハック的な試みとは異なります。

魔術師は秘密を明かしてはならないが、まじめな話、彼はうさぎをどこに隠しているのだろう?

4

1 に答える 1

4

よく発達した構文解析理論と、それをサポートする数え切れないほどのツールがあります。一般に、各キャラクターを 1 つずつ見て、これまでに作成したキャラクターがいつトークンを構成するかを決定します。次に、一連のトークンを見て、一連のトークンが高レベルの文法構造 (この場合は HTML 要素) をいつ構成するかを判断します。構造を認識すると、それらを表すノードのツリー (この場合は DOM ツリー) を構築します。

では、文脈自由文法や、yacc、bison、およびそれらの最新版などのコンパイラー コンパイラーに精通していますか? それらを理解していれば、DOM パーサーは謎ではありません。

于 2011-04-03T20:12:47.067 に答える