亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

setTimeout() 中加不加''的問題

setTimeout() 中加不加''的問題

留白未來 2016-08-16 15:57:00
因為是初學者,問題比較多.首先感謝熱心的朋友們給予我指點,十分的感激你們.這次遇到的疑惑是:setTimeout() 中加不加''的問題.我在setTimeout() 中調用函數名為fun1的函數,兩種方法,1,不帶引號寫函數名fun1,2,帶引號時需要寫fun1();這里面的原理是什么呢?或者指點我一下,去看哪本書的哪個副本能把這個問題理解清楚.再次感謝!補充:我之前做了一個實驗,當時的理解是,不帶()是返回了一個函數指針,帶()是返回函數計算后的返回值.所以=fun()會使fun函數自動執行一次,而=fun并不會使fun函數執行.所以在setTimeout中始終會寫"fun()"而不是"fun",因為我覺得寫成"fun"的時候,給setTimeout的是一個指針而不是函數計算后的返回值.但是在后來的試驗中,發現直接寫成setTimeout(fun,1000)不帶引號和括號也是可以調用函數的,所以有點蒙了,不明白這里是什么原理.
查看完整描述

1 回答

?
木子七

TA貢獻3條經驗 獲得超3個贊

直接調用該方法:setTimeout(fun1,1000);

要帶參數:setTimeout("fun1('obj')",1000)

查看完整回答
反對 回復 2016-08-16
  • 留白未來
    留白未來
    我之前做了一個實驗,當時的理解是,不帶()是返回了一個函數指針,帶()是返回函數計算后的返回值.所以=fun()會使fun函數自動執行一次,而=fun并不會使fun函數執行.所以在setTimeout中始終會寫"fun()"而不是"fun",因為我覺得寫成"fun"的時候,給setTimeout的是一個指針而不是函數計算后的返回值.但是在后來的試驗中,發現直接寫成setTimeout(fun,1000)不帶引號和括號也是可以調用函數的,所以有點蒙了,不明白這里是什么原理.
  • 1 回答
  • 0 關注
  • 1419 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號