3

2回目のループの後、3秒の遅延が必要です。場所はコメントアウトされています。助けてください。

var x = [[1,2,3,4,5,6,7],[8,9,10,11,12,13,14],[15,16,17,18,19,20,21],[22,23,24,25,26,27,28],[29,30,31,32,33,34,35],[36,37,38,39,40,41,42],[43,44,45,46,47,48,49]];
var j=indx='';
var n = 7;
var slice = j= indx='';
for (slice = 0; slice < 2 * n - 1; ++slice) {
    var z = slice < n ? 0 : slice - n + 1;
    for (j = z; j <= slice - z; ++j) {
        indx = x[j][slice - j]-1;
        console.log(indx);
    }
    //window.setTimeout("", 1000);
    //i need delay here.----------------------
}
4

1 に答える 1

1

setInterval(callback, ti​​me)を使用します。と同じsetTimeoutですが、関数は永久に呼び出されます。
clearInterval実行を停止するには、インターバルの ID で呼び出す必要があります。
setInterval関数はそのIDを返します

var intervalId = setInterval(function(){
    var z = slice < n ? 0 : slice - n + 1;
    for (j = z; j <= slice - z; ++j) {
        indx = x[j][slice - j]-1;
        console.log(indx);
    }
    if(++slice >= 2*n-1)
        clearInterval(intervalId);
}, 3000);
于 2013-06-30T10:02:35.937 に答える