JS高级群的日常!写一个从10到0的倒计时,用console.log打印,不可以用 setInterval!本来说好的研究avalonJS最后演变成了看着大神在那边互相比拼实力。。

时间:2021-02-03 15:49:29
 

JS高级群的日常!写一个从10到0的倒计时,用console.log打印,不可以用 setInterval!本来说好的研究avalonJS最后演变成了看着大神在那边互相比拼实力。。

 
小森
执行一个函数  没有全局变量 写一个从10到0的倒计时   用console.log打印  不可以用 setInterval
 
小白
..额,可以多次调用setTimeout()吗
 
 
某个被打败的神
Function fn(a){console.log(a--);if(a>=0)   Settimeout(fn,1000)}
 
某神(非常迅速的敲出)
(function() {var i; for(i = 10; i > 0; i--) {(function(t){setTimeout( function() {console.log(10-t+1)},t*1000)})(i)}})()
 
<script>
(function() {
var i;
for(i = 10; i > 0; i--) {
(function(t){
setTimeout(function(){
console.log(10-t+1)
},t*1000)
}
)(i)}
})
() </script>

最后他们表示不服

要用队列(。。。。)

然后.......

我继续看着面试题。。。

又一个神发出代码(2分钟后)

<script>
(function (i) {
var self = arguments.callee;
console.log(i--);
if (i > 0) {
setTimeout(function() {
self(i);
}, 1000);
}
})(10);
</script>
 
(function(k){
var fc= arguments.callee
setTimeout(function(){
if(k>0){
k--;
fc(k);
console.log(k)
}
},1000);
}(10))
(function(k){
console.log(k--);
if (k >= 0) {
setTimeout(arguments.callee.bind(null, k), 1000);
}
}(10))

一个个神一样的人

function * get() {
for (var i = 10; i > 0; i--) {
yield i;
}
return 0;
} var it = get();
setTimeout(function(){
var out = it.next();
console.log(out.value);
if (!out.done) {
setTimeout(arguments.callee, 1000);
}
}, 1000);