我想比较JavaScript中的两个句子,如果有则返回不匹配。否则,我想true
在句子相等时返回。我已经在网上搜索过,发现的最佳功能是http://ejohn.org/files/jsdiff.js。
该函数接受两个句子并显示是否存在差异,否则返回该句子。
我将另一个String与返回的字符串进行了比较string
:
var string=" Hello";
diffString("Hello","Hello")==string;
尽管上面的语句应该返回true
,但是它返回false
。string
变量中“ Hello”之前应该有一个空格。
我试过了
var string=" Hello";
console.log( diffString("Hello","Hello").valueOf()==string.valueOf());
与:
var string=" Hello";
console.log(diffString("Hello","Hello")==string);
它返回false
应返回的时间,true
因为diffString("Hello","Hello")
它将返回“ Hello”,并且string="Hello"
如何将diffString
函数返回的字符串与变量进行比较?
另一个编辑。在您发表评论后,我将其解决了。请看小提琴。https://jsfiddle.net/hc05fhxr/9/
代码如下,您可以随意更改它。但是对于匹配项,它返回true,并按要求返回不匹配项。它总是用来返回false的原因是因为函数diffString()在返回的结果中添加了不必要的新行。我基本上已经删除了该文件并进行了测试。
var strng = diffString("asdfHello","Hello");
if(strng[-1]==/\n/){strng = strng.slice(0,-1)}
if(strng===" Hello"){
alert(true);
}else{
alert(strng);
}
我已对此进行了编辑,以便在不匹配的情况下不会取出字符串的最后一个字符。请再次查看小提琴。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句