Показать сообщение отдельно
  #5 (permalink)  
Старый 25.04.2015, 20:42
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Вот, пожалуйства, сравнение производительности:
function test(func) {
    console.time(func.name);
    func();
    console.timeEnd(func.name);
}

function separate() {
    let results = [];
    let isPositive = function(number) {return number > 0};
    
    for (let i = 0; i < 1000000; i++) {
        results.push(isPositive(i));
    }
    
    console.log(results);
}

function inline() {
    let results = [];
    
    for (let i = 0; i < 1000000; i++) {
        results.push(i > 0);
    }
    
    console.log(results);
}

test(separate);
test(inline);

Запускать, конечно, надо несколько раз. У меня в FF 37.0.2 в среднем разница в пределах семи процентов в пользу inline (нет, бывают скачки, но как в separate, так и в inline примерно равномерно).

Последний раз редактировалось Erolast, 25.04.2015 в 20:48.
Ответить с цитированием