所以我有一个关于链接超时的问题。我在这里有2种方法,我在决定使用什么方法。方法1绝对干净得多,但是我不确定它的准确性是否比其他方法差或较慢?
方法1:
setTimeout(() => {
}, 1 * 60000);
setTimeout(() => {
}, 2 * 60000);
setTimeout(() => {
}, 3 * 60000);
方法2:
setTimeout(() => {
setTimeout(() => {
setTimeout(() => {
}, 1 * 60000);
}, 1 * 60000);
}, 1 * 60000);
答案 0 :(得分:0)
我的测试表明方法2更快。我重复了大约10次测试。我使用了Chrome Performance Dev Tool。
我使用了以下代码:
function runFirst() {
setTimeout(() => {
console.log(1);
}, 1000);
setTimeout(() => {
console.log(2);
}, 2 * 1000);
}
function runSecond() {
setTimeout(() => {
console.log(3);
setTimeout(() => {
console.log(4);
}, 1000);
}, 1000);
}
但是,这些差异确实很小。我建议使用可读性更好的代码(方法1)。
答案 1 :(得分:0)
方法2更快。这是我测试过的代码:Benchmark
// function1
function func1() {
setTimeout(() => { }, 1 * 60000);
setTimeout(() => { }, 2 * 60000);
setTimeout(() => { }, 3 * 60000);
return 'done'
}
func1()
// function2
function func2() {
setTimeout(() => {
setTimeout(() => {
setTimeout(() => { }, 1 * 60000);
}, 1 * 60000);
}, 1 * 60000);
return 'done';
}
func2()