我有IM時,點擊輸入 - 我想看到「1,2,3,4 ......」(每按一下)爲什麼執行功能不起作用?
<input type='button' value='press' onclick='Clicked();' />
<script>
var t
function Clicked()
{
t=func;
t();
}
function func()
{
var count=0;
return new function() // <=== new or not new ???
{
count++;
alert(count);
}
}
</script>
If im adding the 'new' in the return and click , it says : '1,1,1,1,...'
警報,如果im去掉「新」它不工作...
我的目標就是用這個來獲得:「1,2,3,4 ......」
能有人向我解釋發生了什麼?
我選擇了這個問題,因爲它沒有在根環境上關閉。但爲什麼你用'()'寫'var t = func()'?你不想執行它,你只是想引用內部func ...?沒有?我認爲它應該是這樣的:'var t = func;'然後再寫t()...我的錯誤在哪裏? –
你實際上正在返回一個函數。內部函數不是用func()來執行的,而是爲返回的函數創建一個引用。 – Joe