2016-09-24 39 views
0

我有一個問題得到.push添加額外的值超出第一個任何推動數組。javascript:array.push第一次工作,後續調用錯誤「array.push不是一個函數」

var player_score = []; 

function updatePlayerScore(x) { 
    player_score.push(x); 
    console.log(player_score); 
} 

我第一次調用updatePlayerScore(x)2的值,該陣列被成功地與顯示在控制檯[2]和更新。

下一次我打電話updatePlayerScore(x)任意值(即4)拋出一個錯誤「遺漏的類型錯誤:player_score.push是不是一個函數」

+0

這很可能是正確的,因爲'.push()'是不是一個函數。有沒有改變'player_score'的參考? – TomLingham

+0

你怎麼稱呼這個功能? – iplus26

+0

感謝您的指導 - 在導致問題的單獨函數中,對player_score的引用發生了變化。我能夠註釋掉這行代碼,並且推送正常工作。 –

回答

1

它絕對是工作的罰款,除非你已經改變了player_score兩次通話之間的參考。請檢查您的代碼是否使用player_score變量。

var player_score = []; 
 

 
function updatePlayerScore(x) { 
 
    player_score.push(x); 
 
    console.log(player_score); 
 
} 
 
updatePlayerScore(2); 
 
updatePlayerScore(4);

+0

感謝您的幫助 - 我能夠在另一個功能中進一步找到問題。 –

+0

不客氣 –

相關問題