вот например скорость на 200к итераций, тока учтите что я еще не доделал (по этому и не выкладываю), так что далекоо не все оптимизации, но фишка в том что пользователю срать хот там миллион итераций хоть триллион, он на экране видет только кусок и хочет с ним работать
<script src='//uijs.ru/ui.js'></script>
<script>
ui.controller('Test', function () {
this.arr = [];
var i = 200000;
while (i--) this.arr.push(i);
})
</script>
<div data-repeat="Test.arr" data-init="ww = 11" on-click="ww++"> {{ww}} </div>
я думаю я наверное небуду рисовать больше 1к элементов, буду просто вставлять блоки заоплнители сверху и снизу и высоту их менять, а как камера до туда прокрутиться то вырисовывать что нужно а то что было сверху заменять на блок заполнитель. главное чтобы скроллер не дрыгался. уточню что тупить со временем он уже начинает не из за датаюиндинга а именно из за браузера, то есть мы уперлись в браузер. ^^
так же нужно учитывать тип элементов, блочный или строчный вдруг мы строчный итерируем или ячейки таблоциы и
.т.п.к корче виртуал дом получается
а теперь ангуляр))))))))
<script src='//ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js'></script>
<script>
angular.module('app', []).controller('Test', function () {
this.arr = [];
var i = 200000;
while (i--) this.arr.push(i);
})
</script>
<body ng-app='app' ng-controller='Test as Test'>
<div ng-repeat="val in Test.arr" ng-init="ww = 11" ng-click="ww = ww + 1"> {{ww}} </div>
</body>