gpt4 book ai didi

javascript - 我如何使用js eval返回一个值?

转载 作者:IT王子 更新时间:2023-10-29 03:19:47 27 4
gpt4 key购买 nike

我需要评估从服务器作为字符串传递的自定义函数。这都是我得到的复杂 json 的一部分,但无论如何,我似乎需要一些类似的东西:

var customJSfromServer = "return 2+2+2;"
var evalValue = eval(customJSfromServer);
alert(evalValue) ;// should be "6";

显然,这并没有像我预期的那样工作。我有什么办法可以实现这一点?

最佳答案

第一种方法是删除return关键字和分号:

var expression = '2+2+2';
var result = eval('(' + expression + ')')
alert(result);

注意 '('')' 是必须的。

或者你可以让它成为一个函数:

var expression = 'return 2+2+2;'
var result = eval('(function() {' + expression + '}())');
alert(result);

更简单,不要使用eval:

var expression = 'return 2+2+2;';
var result = new Function(expression)();
alert(result);

关于javascript - 我如何使用js eval返回一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7399024/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com