如何使用javascript更新一个变量的所有部分代码的值?

时间:2016-06-21 20:38:29

标签: javascript

我尝试在每次调用方法后使用JavaScript更新全局变量。但它没有更新。我试过的东西,声明一个变量并通过调用一个方法声明一个变量来初始化它,然后尝试添加它们。好几次,我需要这样做。但它没有添加。我不能用JavaScript吗?

function finalResult() {

    var result = "";


    function addString(str1, str2) {
        return str1 + str2;
    }

    var filter1 = addString("a", "b");
    result += filter1;

    var filter2 = addString("c", "d");
    result += filter2;

    console.log(result);  // gives me -> empty string (ie the first time initialized value)

}

我的预期输出如下:abcd

2 个答案:

答案 0 :(得分:0)

您忘记在finalResult中返回字符串。

function finalResult() {
    var result = "";

    function addString(str1, str2) {
        return str1 + str2;
    }

    var filter1 = addString("a", "b");
    result += filter1;

    var filter2 = addString("c", "d");
    result += filter2;

    console.log(result) // if you want to log "abcd" to the console when you invoke the function elsewhere in your code
    return result;      // if you want the function to return "abcd"
}

答案 1 :(得分:0)

如果要将变量设为全局变量,请将其声明为函数外部或将var result = "";更改为result = "";。 ,您的代码似乎工作正常 - https://jsfiddle.net/oevr4rwm/1/

function finalResult() {    
    result = "";    

    function addString(str1, str2) {
        return str1 + str2;
    }    

    var filter1 = addString("a", "b");
    result += filter1;

    var filter2 = addString("c", "d");
    result += filter2;     
}

finalResult();    
console.log(result);