Javascript 如何在变量中使用加号
我想计算两个数字,这很简单 但有没有办法把算符放入变量中,然后进行计算呢Javascript 如何在变量中使用加号,javascript,variables,Javascript,Variables,我想计算两个数字,这很简单 但有没有办法把算符放入变量中,然后进行计算呢 var x=5; 变量y=5; var p='+'; var z=x+p+y; $(“.button”)。单击(函数(){ 警报(z); }); 点击我您正在查找函数: var x=5; 变量y=5; var p='+'; var z=x+p+y; $(“.button”)。单击(函数(){ 警报(eval(z)); }); 点击我或对要添加变量的字符串使用parseInt: var x=5; 变量y=5; va
var x=5;
变量y=5;
var p='+';
var z=x+p+y;
$(“.button”)。单击(函数(){
警报(z);
});代码>
点击我代码>您正在查找函数:
var x=5;
变量y=5;
var p='+';
var z=x+p+y;
$(“.button”)。单击(函数(){
警报(eval(z));
});代码>
点击我编码>或对要添加变量的字符串使用parseInt:
var x=5;
变量y=5;
var p='-';
var z=x+parseInt(p+y);
$(“.button”)。单击(函数(){
警报(z);
});代码>
点击我代码>您可以使用eval
功能:
var x=5;
变量y=5;
var p='+';
var z=eval(x+p+y);
警报(z)代码>尽可能避免eval
。对于本例,一个简单的switch…case
语句就足够了:
var x = 5;
var y = 5;
var z;
var p = "+";
switch (p) {
case "+":
z = x + y;
break;
case "-":
z = x - y;
break;
}
您还可以使用功能图:
var fnlist = {
"+": function(a, b) { return a + b; },
"-": function(a, b) { return a - b; }
}
var x = 5;
var y = 5;
var p = "+";
var z = fnlist[p](x, y);
一个简单的开关…case
就可以了。下面是你问题的答案-如果你只需要在+
和-
之间做出决定,你也可以用var p=1
或var p=-1
相乘。谢谢!完成..将在10分钟后接受..非常感谢:)@Twix-请记住,使用eval
时会出现一些警告-该函数将尝试执行它提供的任何JS代码。通过验证变量是否包含您可以“信任”的值/运算符,确保您只执行您想要执行的代码。想象一下,如果其中一个变量包含类似于alert('gottcha!')
Nice solution not usingeval
,如果您建议使用eval
,请包含关于执行任意代码的危险的适当警告。我非常喜欢func-map解决方案。。。非常优雅!