Почему mithril, vue, virtual-dom быстрее react?
Тесты замеряют разные действия, где-то добавление, где-то изменения, одни фреймворки быстрее в одном, другие в другом, отсюда и разные результаты.
Ещё сами тесты вызывают сомнения, например в первом тесте у Angular.js приделан setTimeout что-бы не делать перерисовку на каждой итерации + при этом сам тест запускается не асинхронно - это "читерство".
А при выполнении теста с React у меня браузер дергается (видимо из-за особого контента который выводится) - это бъёт по производительности, - возможно это было нарочно сделано. Так же каждый последующий тест работает в поле где есть "мусор" от всех предыдущих тестов - это тоже может снижать цифры.
Тут есть хабра-тест (сделанный пользователями с хабра), он более менее причесан, тестирует добавление/изменение, но тут React тоже не блещет, возможно React хорош в каких-то специфических случаях, хотя я видел много бенчмарков с React, и он нигде не имел особого преимущества.
PS: Если вас не затруднит, не могли бы вы сюда добавить mithril или vue для сравнения.Дополнил про React
Я особо не копал React, у меня такие мысли - они реализовали виртуальным DOM который максимально эффективно превращает один кусок документа в другой, проблема в том что на практике это не нужно - в других фреймворках делают просто сокрытие одного куска и показ другого куска - и это работает быстрее, чем перестройка DOM. Так же я слышал заявления, что React работает быстрее за счет того что они не делают чтения из DOM - видимо они сравнивают с jQuery (и vanilla js), т.к. в других MV* фреймворках, чтения из DOM делаются не часто (или только на стадии инициализации).
Решил разобраться и читаю ссылку calendar.perfplanet.com/2013/diff, видимо из-за diff алгоритма, который использует реакт.