2012-05-05 450 views
-1

我創建在JavaScript學院就是一個遊戲中使用,我有一個按鈕來調用一個函數,但我需要它包括從另一個功能從一個函數變量取另一個函數

變量,如果我把其中的變量是其他函數內部功能按鈕不會把它

有沒有這樣做的一種方式,或者在第一時間拿到函數創建的變量,並在第二個函數中使用它們

這是一個簡單的數學遊戲,你會得到一個隨機數和一個隨機數 (即5 + 7,4 * 3,2/6,等等)

,所以我有一個函數來顯示隨機數使用

var ranNum1a=Math.floor(Math.random()*10); 

我需要其他函數來檢查用戶的回答,但我需要知道隨機數是從其它功能

+0

使用全局變量。這是最簡單的方法。 – VisioN

+0

如果我在函數外面聲明變量,那麼當它再次調用函數時,它將是下一個問題的相同隨機數,這是我遇到的問題 –

+2

我不太瞭解您的問題在哪裏。也許你應該粘貼一些代碼。 – Imp

回答

0

你就需要將這些變量的全局 例如:

var myValue; 
function setValue() 
{ 
    myValue = "test"; 
} 

function getValue() 
{ 
    alert(window.myValue); // yup, it's "test" 
} 

source..

+0

*是,它是「測試」*不一定。不,如果你不調用'setValue'。 –

+0

[不* *使這些變量全球](http://weblogs.asp.net/wallen/archive/2003/05/08/6750.aspx)。 – Malvolio

0
var ranNum1a; 
function show() { 
    ranNum1a = Math.floor(Math.random()*10); 
    // show it 
} 

function check() { 
    if (ranNum1a == 42) { 
    alert("Ok"); 
    } 
} 
0

對於最簡單的情況,將變量傳遞給另一個函數可能是解決此問題的最佳方法。

這裏有一個例子:

function f1(var1, var2) { 
    //do you stuff then pass the variable to another function 
    f2(var1, var2); 
} 

function f2(v1, v2) { 
    // here v1 will get the value from var1 and v2 from var2 if passed from within the function f1 
} 
0

我發現這是相對於原來的問題非常有幫助的:

回報,你想在functionOne使用的值,然後內functionTwo並調用functionOne將結果放入新的變量中。這應該使您能夠使用functionTwo中的functionOne中聲明的var。

function functionOne() { 
    var variableThree = 3; 
    return variableThree; 
} 

function functionTwo() { 
    var variableOne = 1; 
    var var3 = functionOne(); 

    var result = var3 - variableOne; 

    console.log(variableOne); 
    console.log(var3); 
    console.log('functional result: ' + result); 
} 

functionTwo(); 
相關問題