2016-08-31 44 views
0

如問題所說,我試圖找到一種方法,讓我到一個局部變量另一個函數內更新,功能更新局部變量的函數,如果所述變量作爲參數給出。在我創建的項目中會有多個「foo」實例(引用下面的代碼),某些內容將根據foo實例的計數器更新,我希望在更新函數中對其進行更新。當所述變量傳遞給另一個函數作爲參數

function foo(){ 
     this.counter = 0; 
    } 

    function update(fooInstance){ 
     fooInstance.counter+=1; 
    } 

    x = new foo() 

    setInterval(function({ 
     update(x) 
    }),1000) 
+3

什麼是你的代碼的問題? (除了錯字) – Oriol

+2

你不能更新*變量*,因爲JS函數參數是通過值傳遞的,但是如果你傳遞一個* object的引用,你可以修改那個對象。你顯示的代碼應該沒有任何問題。 – nnnnnn

回答

2

變化

setInterval(function({ 
    update(x) 
}),1000) 

setInterval(function(){ 
    update(x) 
},1000) 
相關問題