PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Ajax
[問題] 關於setTimeout寫法
作者:
blues520520
(blues520520)
2018-09-15 21:20:42
//錯誤寫法
setTimeout(console.log(2),1000);
//正常寫法....
setTimeout(function(){
console.log(2);
},1000)
//簡短寫法
setTimeout('console.log(2)',1000);
為什麼錯誤寫法也會印出2,不懂?
作者:
peanut97
(丁丁)
2018-09-15 21:37:00
setTimeout第一個參數是函數,時間到會執行函數的內容至於直接把 console.log(2)這種敘述當函數放進去...我就不知道了。 求解+1
作者:
eight0
(欸XD)
2018-09-15 21:47:00
你的錯誤寫法相當於
http://tinyurl.com/y964rlkk
作者: lachtchlee (nymph)
2018-09-15 22:25:00
setTimeout(console.log(2),1000);console.log(7);//output: 2 7 故it is not a callbacksetTimeout(function(){console.log(2)},1000);setTimeout(function(){console.log(2)},1000);console.log(7); //output 7 2 2 there are two cbs
作者:
xdraculax
(首席怪叔叔)
2018-09-15 23:30:00
test = function(){print 2;
作者:
blues520520
(blues520520)
2018-09-15 23:31:00
我知道他沒有等一秒後才執行,而是立即顯示,不懂錯誤寫法還能正常執行出來,不會報錯
作者:
xdraculax
(首席怪叔叔)
2018-09-15 23:31:00
return void();}setTimeout(test,1000);那錯誤寫法就像這種效果,不知道這樣你是否比較好懂@@上面錯了,應該是 setTimeout(test(),1000);丟入 setTimeout 的是 function 跑完後返回的結果而不是 function 本身
作者: lachtchlee (nymph)
2018-09-15 23:45:00
原po 你懂run to completion嗎?希望你再仔細看看上文!
作者:
blues520520
(blues520520)
2018-09-16 13:56:00
謝謝各位解釋
作者:
y3k
(激流を制するは静水)
2018-09-16 22:29:00
這問題就好像別人預期要你放把麵包放到烤麵包機裡面送過去但是你卻把烤好的麵包送了過去XD
作者:
VdustR
(京)
2018-09-17 14:56:00
mdn 有寫啊...
繼續閱讀
[問題] 爬蟲遇到statusCode=302相關問題
ggbast
Fw: [問題] 無法更改input框的值
a0813
[問題] 關於for迴圈的小問題
purestone
[問題] 使用 Websocket 連線 PTT 如何使用 utf-8
CodingMan
[問題] js的讀取順序
oCrazyDucko
[問題] 可畫X軸多層的Chart元件
girl5566
[問題] google map api 用時間排序
apalamplm
[問題] facebook 公開粉絲頁面評論抓取
thrco
[工具] 創建與編輯PDF (hummus-recipe)
little78926
[問題] NodeJS上修改程式無反應
z604005
Links
booklink
Contact Us: admin [ a t ] ucptt.com