java每隔一秒读取文件_隔一秒钟读取一个数组的一个值

偷师学艺,借鉴排名第一的答案,如果用setTimeout()实现可以这样写:

javascript(function(arr){

var i=0; length=arr.length;

(function a(){

setTimeout(function(){

if(i

console.log(arr[i++]);

a();

},1000);

}())

}([9,6,4,7,'r','t']));

如果是用setInterval()实现可以这样写:

javascript(function(arr){

var i=0; length = arr.length;

(function(){

setInterval(function(){

if(i

console.log(arr[i++]);

},1000);

}())

}([9,6,4,7,'r','t']));

基本上思路差不多,我也是个小白,匿名函数自执行也是最近学习了一点,我这里写一下我的分解思路,就当做是小白的一个读书笔记吧:

首先,一开始先想到遍历数组挨个打印,于是就是这样:

javascriptvar arr = [9,6,4,7,'r','t'];

for(var i=0; i

console.log(arr[i]);

}

其次再在这个基础上想到匿名函数自执行把arr作为形参,具体数组作为实参,于是就是下面这样:

javascript(function(arr){

var i=0; length = arr.length;

for(i; i

console.log(arr[i]);

}

}([9,6,4,7,'r','t']));

最后想到用匿名函数自执行并使用setInterval()实现每一秒挨个打印:

javascript(function(arr){

var i=0; length = arr.length;

(function(){

setInterval(function(){

if(i

console.log(arr[i++]);

},1000);

}())

}([9,6,4,7,'r','t']));

再在这个基础上参(fu)考(zhi)排名第一的答案用setTimeout()实现此效果:

javascript(function(arr){

var i=0; length=arr.length;

(function a(){

setTimeout(function(){

if(i

console.log(arr[i++]);

a();

},1000);

}(i))

}([9,6,4,7,'r','t']));

感谢楼上各位大牛的答案,菜鸟我受教了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值