Наблюдатели мутаций DOM медленнее, чем события мутаций DOM?

В следующем коде используется событие мутации DOM DOMNodeInserted, чтобы обнаружить существование элемента bodyи поместить его innerHTMLв оболочку.




    
    


    

Lorem ipsum dolor sit amet.

И несмотря на успех накрутки, там ошибка показывает, что узел не найден. В этом ответе на вопрос объясняется, что это связано с тем, что при загрузке jQuery он добавил элемент divв тело для выполнения некоторых тестов, но не смог удалить этот элемент div, потому что этот элемент был завернут в оболочку, так что он больше не является дочерним элементом тела.

Приведенный выше эксперимент говорит нам, что событие DOMNodeInsertedвыполняется быстрее, чем тесты jQuery, потому что тестовый элемент jQuery(div)был завернут, прежде чем его можно будет удалить с помощью jQuery.




Теперь следующий код может выполнять те же манипуляции, и он использует недавно представленные наблюдатели мутаций DOM. На данный момент (2012 -07 -11 )работает только на Chrome 18 и выше.




    
    


    

Lorem ipsum dolor sit amet.

Эти коды не выдавали никаких ошибок. Это означает, что jQuery работает быстрее, чем DOM Mutation Observers, поэтому он смог удалить свой тестовый элемент (div). прежде чем этот элемент можно будет обернуть в оболочку.




Из двух приведенных выше экспериментов мы находим, что когда дело доходит до скорости выполнения:

  • События мутации DOM > тесты jQuery
  • Тесты jQuery > Наблюдатели мутаций DOM

Может ли этот результат надлежащим образом доказать, что DOM Mutation Observers работает медленнее, чем DOM Mutation Events?

9
задан Community 23 May 2017 в 12:00
поделиться