在函数之间传递值

时间:2011-08-08 20:17:24

标签: javascript function loops

我在javascript中编写了一些代码,但是我不明白如何在函数之间传递值。对此查询感到抱歉,但我尝试搜索,并不太明白发生了什么。

这就像我想做的事情:

function check() {
    var x = "one";
    if (condition) 
    x = "two";
    //return x;
}

function compute() {
    maximum = 100;  //global
    var current = document.getElementById('test').value;
        var output = maximum/current;
        if(x == "one") Foo1();
        else Foo2();
}

function Foo1() {
    //code using value of ouput
}

var i=0;

function Foo2() {
    setTimeout(function () {
        //code
        i++;
        if (i < output) Foo2();
    }, 1000)
}

我希望x的值转到compute()并相应地检查条件时,转到Foo1Foo2,并输出值这些功能(Foo1Foo2)。

1 个答案:

答案 0 :(得分:2)

听起来你需要一些javascript函数和参数的基础知识。

这是一个简单的例子:

function step1() {
    var x = 3;   // This is a local variable.  It is not accessible anywhere outside
                 // this function unless it is passed as a parameter to a function call

    step2(x);    // Call step2, passing it a parameter
}

function step2(p) {
    // When this function starts, the parameter p will have whatever value
    // was passed in the function call.
    // In this particular example, it will initially have the value of 3.

    console.log(p);    // outputs 3

    p = p + 3;    // add three to the current value
    step3(p);     // call step3, passing it a parameter
}

function step3(r) {
    console.log(r);    // outputs 6
}

step1();    // call the first function