使用javascript从字符串中删除双引号
我有一个动态生成的字符串。最后我得到了这个:使用javascript从字符串中删除双引号,javascript,Javascript,我有一个动态生成的字符串。最后我得到了这个: fullcondition: "5439=5436 or 5439=5438" 变量fullcondition包含带双引号的5439=5436或5439=5438 fullcondition在if语句的后面使用,这就是为什么我需要删除双引号 if ("5439=5436 or 5439=5438") 不起作用 我需要的是: if (5439=5436 or 5439=5438). 提前感谢。您可以使用eval对字符串求值: eval("543
fullcondition: "5439=5436 or 5439=5438"
变量fullcondition包含带双引号的5439=5436或5439=5438
fullcondition在if语句的后面使用,这就是为什么我需要删除双引号
if ("5439=5436 or 5439=5438")
不起作用
我需要的是:
if (5439=5436 or 5439=5438).
提前感谢。您可以使用eval对字符串求值:
eval("5439==5436 || 5439==5438")
但这假设您已经完成了一些正则表达式转换,将表达式转换为javascript可以解释的内容。您可以编写如下内容:
var x = "5439=5436 or 5439=5438".replace(/=/g, '===').split(' or ');
if ( eval(x[0]) || eval(x[1]) ) {
// some code
}
但是
编辑:无评估:
或缩短:
var x = "5439=5436 or 5439=5438".replace(' or ', '=').split('=');
if (x[0]===x[1] || x[2]===x[3]) {
// some code
}
完全条件。替换\;即使没有引号,这也不是有效的条件表达式。显示此字符串的创建位置。所以在JS中,比较使用==或===和not=哪个是assignment@LukePark:您必须使用.replace//g来替换第一个以外的内容。我并不认为OP的字符串中首先有引号-@T.J.Crowder在JS中我总是忘记这一点。你说得对。
var x = "5439=5436 or 5439=5438".replace(' or ', '=').split('=');
if (x[0]===x[1] || x[2]===x[3]) {
// some code
}