如何在 eval 中使用动态字符串
How to use dynamic string in eval
let value = 'italic';
let varname = "fontSizeTitle";
eval(varname + "=" + value);
console.log(fontSizeTitle)
我有一个大项目,我在其中使用 eval()
将动态变量分配给动态字符串。这里的问题是它抛出一个错误说 italic is not defined
但是当我想将值用作字符串但又是动态的时?我如何告诉 eval()
我希望 value
是动态的。很抱歉没有发布我的项目代码,但它也是这里的确切场景。
italic
是字符串文字而不是变量名吗?如果是这样,您必须用引号将其括起来才能进行设置。
您当前的 eval
语句执行此操作:
fontSizeTitle = italic
这可能是应该的:
fontSizeTitle = 'italic'
以下代码片段将显示此工作原理:
let value = 'italic';
let varname = "fontSizeTitle";
let statement = varname + "='" + value + "'";
console.log(statement);
eval(statement );
console.log(fontSizeTitle)
我已将语句本身添加到控制台日志中,因此您可以看到实际执行的内容。
let value = 'italic';
let varname = "fontSizeTitle";
eval(varname + "=" + value);
console.log(fontSizeTitle)
我有一个大项目,我在其中使用 eval()
将动态变量分配给动态字符串。这里的问题是它抛出一个错误说 italic is not defined
但是当我想将值用作字符串但又是动态的时?我如何告诉 eval()
我希望 value
是动态的。很抱歉没有发布我的项目代码,但它也是这里的确切场景。
italic
是字符串文字而不是变量名吗?如果是这样,您必须用引号将其括起来才能进行设置。
您当前的 eval
语句执行此操作:
fontSizeTitle = italic
这可能是应该的:
fontSizeTitle = 'italic'
以下代码片段将显示此工作原理:
let value = 'italic';
let varname = "fontSizeTitle";
let statement = varname + "='" + value + "'";
console.log(statement);
eval(statement );
console.log(fontSizeTitle)
我已将语句本身添加到控制台日志中,因此您可以看到实际执行的内容。