[問題] 菜鳥問定義變數

看板Ajax作者 (akakaze 二兵 >)時間10年前 (2015/10/31 08:43), 10年前編輯推噓2(200)
留言2則, 2人參與, 最新討論串1/1
請問各位大大,我有以下的程式 <script> document.getElementById('testbutton').onclick = function () { var t = Math.tan(Math.PI * 0.2); var a; var i = 0; for(; i < 1000; i ++){ a = i / t; //do something } } //other code </script> 這是一個可能重複觸發的事件,我希望變數t和變數a不要在每次觸發的時候都再重新定義 但我也不希望提出去變成全域變數影響其他的code 請問有什麼辦法可以達到我想要的結果嗎?還是我觀念錯誤,其實不會重新定義,或是即 使重新定義也沒有任何影響? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 113.61.144.60 ※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1446252219.A.9F4.html

10/31 09:14, , 1F
10/31 09:14, 1F
感謝大大簡單易懂的舉例!

10/31 09:48, , 2F
簡單的說 外面再包一層closure即可
10/31 09:48, 2F
感謝大大!closure這個關鍵字點醒我了XD ※ 編輯: m2251000 (113.61.144.60), 10/31/2015 10:15:55
文章代碼(AID): #1MD0wxdq (Ajax)
文章代碼(AID): #1MD0wxdq (Ajax)