1

次のような状況があります。

var varable_1=10;
var variable_2=20;
.....
var variable_n=10000;
function update_varable(variable){
   ....some code.....
}

update_variable('variable_1');update_variable('variable_2')...などを呼び出して、これらの変数をそれぞれ更新する必要があります。

出来ますか?

4

5 に答える 5

2

関数内で変数を渡したい場合update_variableは、例の引用符を削除する必要があります。やり方はいろいろありますが、簡単なものを載せておきます。関数内で複数の変数を渡すこともできます。

デモはこちら

var varable_1=10;
var variable_2=20;
var variable_n=10000;
function update_variable(x){
x = 300 //some new value
return x;
}

そして呼び出し:

variable_1 = update_variable(varable_1);

(関数名の一部の行で「i」が欠落しています。「update_varable」です)

                                                   ^  
                                               missing "i"
于 2013-07-09T06:39:33.257 に答える
1

配列はタスクにより適していると思います。

ただし、変数名が var1、var2 .. varN のような場合は、このコードを eval 関数で使用できます。

    var var1 = 10;
    var var2 = 20;

    function update_var(variable) {
        return variable += 1;
    }

    function main() {
        for (var i = 1; i < 3; i++) {
            eval("var" + i + " = update_var(var" + i + ")");
            eval("console.log(var" + i + ");");
        }
    }
于 2013-07-09T06:39:31.340 に答える
1

更新関数の引数として文字列を使用する必要がある場合evalは、関数内で使用して、文字列の背後にある実際の変数を取得できます。

function update(varName) {
    eval(varName + " += 1;");
}
于 2013-07-09T06:46:33.097 に答える
-1
function update_varable(variable){
   variable += 10;

return variable;
}
于 2013-07-09T06:39:46.507 に答える