JavaScript 要如何將參數傳入 setTimeout()

JavaScript setTimeout() 蠻常會使用到的, 使用方法很簡單(如下述), 但是要怎麼將參數帶進去?

setTimeout 使用方式

範例

setTimeout("hello", 1000); // 每1秒執行一次 hello().

setTimeout("hello()", 1000); // 每1秒執行一次 hello().

若是要將參數傳進去, 要注意的是 "javascript statement" 此為 函式名稱(Function name), 而且是"字串".

參數帶入的方式如下範例

setTimeout("move_to(" + move_pos + ")", 1000); // 每秒執行一次 move_to(move_pos), move_pos 是變數值.

setTimeout("move_to(" + move_pos_x + "," + move_pos_y + ")", 1000); // 每秒執行一次 move_to(move_pos), move_pos 是變數值.

setTimeout("move_to('" + string + "')", 1000); // 每秒執行一次 move_to(string), string 是變數值(字元、字串).

附註

  • 若是 setTimeout(hello, 1000);, (沒有指定 hello 為字串) 會無窮盡的執行 hello(). XD

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

在〈JavaScript 要如何將參數傳入 setTimeout()〉中有 7 則留言

  1. setTimeout 只會執行一次,若要達到連續執行效果,還是要在執行結束前再呼叫一次 setTimeout。不然就要改用 setInterval。

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料