我有
var mean = 20;
var median = 30;
我的函数应该获取string类型的参数('表示' /'中位数'),并对并行var做一些事情:
function compute(varNameAsString){
return varNameAsString.toVariable() + 5;
}
如何实现toVariable? 我试过了
varNameAsString.valueOf()
但它没有工作......
谢谢!
答案 0 :(得分:1)
使用哈希表。试试这个。
var values = { mean: 20, median: 30 };
function compute(varManeAsString){
return values[varNameAsString] + 5;
}
这应该有效。
当然,您总是可以使用eval
,但正如我链接的帖子所说,哈希表通常更好。
答案 1 :(得分:0)
尝试:
return eval(varNameAsString) + 5;
答案 2 :(得分:0)
你可以window[varNameAsString]
:
var mean = 20;
var median = 30;
function compute(varNameAsString){
return window[varNameAsString] + 5;
}
compute('median'); // Will output 35