Sposób, w jaki go czytam, obejmuje dwie opcje. Ale zanim przyjrzymy się temu, musisz zrozumieć, jak działa stary model.
W większości, jeśli nie we wszystkich implementacjach mechanizmów renderowania HTML, DOM jest implementowany w C lub C ++, a silnik JavaScript jest dodatkiem, który ma eksportowane powiązania do DOM. Ma to sens, jeśli spojrzysz na ewolucję HTML i JavaScript. Ale marnuje się dużo czasu na zbieranie połączeń z JavaScript do C / C ++ iz powrotem.
Pierwsza opcja polega na tym, że DOM jest ściślej związany z silnikiem JavaScript. Zasadniczo obiekty DOM stają się podstawowymi obiektami JavaScript, takimi jak Array. Nie robi to wiele poza ograniczeniem marszowania, ponieważ DOM używa rodzimych typów danych z silnika JavaScript. DOM jest następnie nadal implementowany w C lub C ++.
Druga opcja i prawdopodobnie to, co one oznaczają, to faktyczna DOM jest zaimplementowana w JavaScript. Minusem jest to, że dostęp do DOM jest w pełni zinterpretowany, ale z drugiej strony usuwa wszelkie marszowanie. Jest to prawdopodobnie zysk netto, ponieważ DOM i tak jest w większości danymi.
Z drugiej strony nie mogę udzielić jednoznacznej odpowiedzi - nie pracuję dla Google, a zatem nie mam zbyt wiele wglądu.