Сообщение от kobezzza
|
никогда не делай бенчмарки через консоль отладчика, т.к. он отключает использование JIT компилятора и результат замеров может значительно отличаться
|
сделал без консоли
результат почти тот же в Хроме, FF
var timeStart,
i,
maxItems = 1e6,
arr = [],
needKey = 500137, // где-то в середине
myArr;
// генерим массив
for (i = 0; i < maxItems; i += 1) {
arr.push({key: i, label: i + ''});
}
// test filter
timeStart = +(new Date());
myArr = arr.filter(function (item) {
return (item.key === needKey);
});
alert('filter ms: ' + (new Date() - timeStart));
// test цикл
myArr = [];
timeStart = +(new Date());
for (i = 0; i < arr.length; i += 1) {
if (arr[i].key === needKey) {
myArr.push(arr[i]);
break;
}
}
alert('for ms: ' + (new Date() - timeStart));