Для многих наверное не новость, но есть такая технология (внесена в ECMA 7) Object.observe, т.е. биндинг уже есть в поставке самого js!
Метод Object.observe() используется для асинхронного обзора изменений в объекте. Он предоставляет поток изменений в порядке их возникновения.
в Angular Light 0.8 уже встроили, вот результаты
Вот в сравнении с Angular (TL;DR быстрее начинает работать биндинг в ~20-40 раз)
Даже если вы во всю используете фреймворки или MV* библиотеки, O.o() позволит им получить неплохой прирост в производительности, который достигается за счёт быстрой, упрощенной реализации, и в то же время продолжает использовать тот же интерфейс API. Например, последний год команда разработчиков Angular провела сравнительный анализ и установила, что dirty-checking занимает приблизительно 40мс, в то время как О.о() занимает где-то 1-2мс (получается, быстрее в 20-40 раз).
Дата-байндинг без необходимости использовать тонны сложного кода! А ведь это так же означает, что вам больше не придется опрашивать модель на получение изменений!
Статьи:
- на MDN
Революция дата-байндинга с Object.Observe()
Введение Грядет революция. Появилось новое дополнение к JavaScript, которое изменит всё, что вы когда-либо знали о дата-байндинге. Помимо этого, измен
habrahabr.ru
Angular Light + Object.observe
Angular Light — это самостоятельный клиентский MV(C/VM) фреймворк, который построен на идеях Angular.js и Knockout.js, и похож на упрощенный Angular.j
habrahabr.ru
Не найдено | MDN
developer.mozilla.org