2
を実行したsetTimeout setTimeout(doIt(i),2000);
は即座Javascriptが即座にこのコードを実行している
なぜにスクリプトとして、しかし、私は、それを実行する前に2ミリ秒待機する必要がありますか?
<script type="text/javascript">
var colors= ["red","pink","green"];
function doIt(i){
i++
console.log(i);
console.log("didIt");
$('body').append("<style>body{background:"+i+";}</style>");
if(i==2){
}
else{
test(i);
}
}
function test(i){
setTimeout(doIt(i),2000);
}
test(0);
</script>
'setTimeout'最初の引数は参照であります関数へ – zerkms
Differenc関数式と関数呼び出しの間のe:かっこ1つは関数であり、もう1つは関数によって返される値です。 –
チュートリアルはこちら:http://www.jquerybyexample.net/2014/11/javascript-settimeout-executes-function-immediately.html – Jaime