通過for迴圈每隔兩秒按順序列印出arr中的數字

2021-07-29 20:27:11 字數 807 閱讀 5571

方法1:

var i=0;

var arr = [1, 2, 3, 4, 5, 6];

function f()

方法2:

var arr = [1, 2, 3, 4, 5, 6];

var j = 0; function fn()

for(var i = 0; i < arr.length; i++ )

這裡我們另外乙個全域性變數來儲存值,每執行一次函式fn,j就加一次,所以執行到settimeout的時候,就會呼叫fn函式,所以會達到我們預期的效果,但是這裡這個j是乙個全域性變數,全域性變數會造成容易改變其值或者命名衝突等問題.

改進:引入閉包函式.因為閉包函式,每一次建立都會存在乙個自己的空間來儲存唯一的值.所以利用這個思維.我們把**寫成下面的**.

方法3:

var arr = [1, 2, 3, 4, 5, 6];

for(var i = 0; i < arr.length; i++ ), i*2000);

})(i);

}

我們將i的每一次執行for迴圈的值,傳給不同建立的閉包函式,這樣每乙個閉包函式裡儲存的i值,就都不會一樣.所以就是達到我們的想要的結果.

方法4:

var arr = [1, 2, 3, 4, 5, 6];

function fn()

}setinterval(fn, 2000);

可以使用陣列的shift方法。

簡單實現textview文字每隔兩秒就改變一次

首先布局只需要乙個textview即可,這裡不再貼出 實現原理就是子執行緒實現乙個死迴圈,每隔兩秒給主線程傳送乙個訊息,主線程在接收到訊息時更改控制項狀態 這個方法可以實現文字每隔兩秒就改變一次,public void texttask else super.handlemessage msg ne...

兩秒對比100萬資料差異

日常工作中,有可能需要對比兩個檔案的資料差異,在大量資料的情況下,常用的辦法是使用資料庫對比,現推薦乙個使用python指令碼對比資料的方法,實際測試,檔案一有60萬行資料,檔案2有50萬行資料,對比差異耗時1.5s,大大節省了對比資料的耗時,在資料庫裡加索引的情況下,也需要7s左右出結果,所以py...

PHP輸出 每隔兩1秒輸出乙個數字

現在我想實現一種效果,每隔1秒輸出乙個數字。因為php一般是等完全執行完之後,再一下輸出的 php view plain copy print?for i 10 i 0 i ob end flush 上面這段 可以在ff下,每隔一秒輸出乙個數字 10隔1秒 9隔1秒 8.但是在ie下面,還是一下子全...