2013-11-29 106 views
0

我想保存函數的值,該函數將變量中的.xml文件中的隨機值返回,並在每次更新新值時更新變量由函數生成。將函數的值保存到變量中,該變量返回隨機值

爲了說明:這是我的功能

function getNewValue() { 
return videos[Math.floor(Math.random() * videos.length)]; 
} 

我倒是希望保存將其在變量如「CurrentValue的」而生成的值,所以每次的功能被調用時,「CurrentValue的」改變所產生的價值。

喜歡的東西:

var currentValue; 
function getNewValue() { 
return videos[Math.floor(Math.random() * videos.length)]; 
currentValue = getNewValue(); 
} 

不需額外的工作,因爲函數生成isn't老一新的價值..

什麼想法?謝謝

+0

getNewValue永遠不會到達,因爲您在執行之前返回。 – davidkonrad

回答

2

應該

var currentValue; 
function getNewValue() { 
    currentValue =videos[Math.floor(Math.random() * videos.length)]; 
    return currentValue; 
} 

你正在返回的getNewValue函數之前的值被分配到currentValue

+0

這聽起來很合理。我想在$('#currentVideoDiv')。html('Currently Playing:'+ currentValue);但它只是返回「function getNewValue()...我如何顯示實際值? –

+0

看起來像你在某處調用'currentValue = getNewValue',你是否在做這樣的事情 –

+0

你可以在這裏看到更多我的代碼:http ://stackoverflow.com/questions/20274897/get-the-current-value-of-a-function-which-returns-random-values-youtube-api會很好,如果你看看這個。同樣的問題 –

0
var currentValue; 

function getNewValue() { 
    return videos[Math.floor(Math.random() * videos.length)]; 
} 

currentValue = getNewValue(); 

我更傾向於這樣做,因爲它至少對我來說更具可讀性。調用getNewValue()並在裏面設置變量並不能告訴我,當我將這個函數調用到其他地方時,我實際上正在設置currentValue變量。

+0

問題是,getNewValue()是從另一個函數中調用的,然後我想將值保存在一個變量中以知道哪個值已設置,我不想在currentValue中保存一個新的隨機值後記 –