0

我有这个小例子:

var myoperation = "2+2";
var myoperation2="2*5/3";
var myoperation3="3+(4/2)"

反正有执行此操作并获得结果吗?

提前非常感谢!

4

6 回答 6

3

您可以使用该eval()功能。例如:eval("2+2")

于 2013-05-19T13:24:04.017 回答
2

使用evalMDN:https ://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/eval

有人说它是邪恶的,但它正是为此目的而设计的;

console.log(eval(myoperation)); // 4
console.log(eval(myoperation2)); // 3.33
console.log(eval(myoperation3)); // 5
于 2013-05-19T13:24:22.337 回答
1

你可以用eval这个。

在此处输入图像描述

在验证之前不要将任何数据从远程服务器传递给eval它。损坏可以用eval.

于 2013-05-19T13:26:59.853 回答
1

您还可以这样做eval

function run(myoperation) {
    return new Function('return ' + myoperation + ';').call();
}

run('2+2'); // return 4
于 2013-05-19T13:28:43.573 回答
0

将字符串传递给 eval() 函数。

于 2013-05-19T13:25:23.767 回答
0

你可以使用函数

var result = new Function("return " + "2+2")();
于 2013-05-19T13:27:13.170 回答