10秒后删除数组中的第一个元素

时间:2015-04-15 09:08:59

标签: javascript arrays

我有一个数组数据,如下所示:

myArray=['0','1','2','3','4','5'];

现在我想在10秒后删除数组的每个第一个元素。 我现在不是要求完整的代码我只想获得有关如何做到这一点的一些提示和建议。欢迎任何答案。

4 个答案:

答案 0 :(得分:5)

我知道你希望它每10秒发生一次,因为你已经写过#34;每个第一个元素"。

var timer = window.setInterval(function () {
    if (myArray.length > 0)
        myArray.splice(0, 1);
    else
        window.clearInterval(timer);
}, 10 * 1000);

或@Cerbrus提出的更好的解决方案,使用Array.prototype.shift

var timer = window.setInterval(function () {
    if (myArray.length > 0)
        myArray.shift();
    else
        window.clearInterval(timer);
}, 10 * 1000);

如果您希望仅发生一次,请使用window.setTimeout代替window.setInterval

var timer = window.setTimeout(function () {
    myArray.shift();
}, 10 * 1000);

答案 1 :(得分:1)

你可以这样做:

setTimeout(function({
   var removedVariable = myArray.shift();
}), 10000)

答案 2 :(得分:1)

这样的事情应该会有所帮助:

http://jsfiddle.net/zho0ysgc/6/

 var arry = [1, 2, 3]
var count
alert(arry);

setTimeout (function(){ 
arry.shift();   
alert(arry);
}, 1000);

答案 3 :(得分:1)

使用jQuery 'shift'方法删除Array中的第一个元素,并在DOM Demo中打印

myArray=['0','1','2','3','4','5'];            
    setInterval(function(){      
        if(myArray.length > 0) {
            $('.print').html(myArray.shift());    
        }    
    },1000)