setTimeout計時器
阿新 • • 發佈:2017-06-23
strong class 問題: con message rip ons mon mes
首先來看這樣一個問題:
例1:
var messages = [‘1‘, ‘2‘, ‘3‘]; for (var i = 0; i < messages.length; i ++) { setTimeout(function(){ console.log(message[i]); }, i * 1500); }
console.log()的結果是3個undefined,而不是想要的“1‘’,2‘’,‘’3”這樣的結果。導致這樣結果的原因需要弄清楚setTimeout這個計時器的原理。
語法: setTimeout(code,millisec)
code指的是要調用的函數後要執行的 JavaScript 代碼串,通常為一個函數;
millisec指的是在執行代碼前需等待的毫秒數。
舉個例子:
例2
setTimeout("alert(‘對不起, haorooms博客要你等候多時‘)", 3000 )
頁面會等三秒才彈出alert框。也就是說setTimeout中alert(第一個參數)執行前要等待3秒(第二個參數設置的時間)。
再看一個例子:
function fn(){ setTimeout(function(){alert(1)},0); alert(2); } fn();
先執行alert(2),後執行alert(1)。
(夜太深,先睡覺,明天接著寫)
setTimeout計時器