Да, я знаю - этот вопрос имеет тысячи ответов. пожалуйста, не говорите мне о setTimeout
метод потому что - да, все возможно с этим, но не так просто, как с использованием метода sleep()
.JavaScript sleep
Например:
function fibonacci(n) {
console.log("Computing Fibonacci for " + n + "...");
var result = 0;
//wait 1 second before computing for lower n
sleep(1000);
result = (n <= 1) ? 1 : (fibonacci(n - 1) + fibonacci(n - 2));
//wait 1 second before announcing the result
sleep(1000);
console.log("F(" + n + ") = " + result);
return result;
}
, если вы знаете, как получить тот же результат с помощью setTimeout
- скажите мне;) fibanacci довольно простая задача, потому что есть не более 2 рекурсии, но как насчет п -рекурсии (например, fib (1) + fib (2) + .. + fib (n)) и спать после каждого «+»? Нет, спать было бы муууууучем проще.
Но все же я не могу получить рабочий пример его реализации. while (curr - start < time) { curr = (...) }
сложно, но это не сработает (просто останавливает мой браузер, а затем бросает все консольные журналы сразу).
Рассматривали ли вы использование лучшего алгоритма? – Yacoby
В чем вопрос? –
@Yacoby - Для вычисления Фибоначчи? Это просто пример, я знаю, что это медленно, как черт. @ Oli - как переписать его в setTimeout или как реализовать рабочий сон() – Diazath