Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript从字符串中删除双引号_Javascript - Fatal编程技术网

使用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
}