Aurelia e2e:text.indexOf()不正确地比较字符串与包含在div中的字符串
问题描述:
我试图检查包含在div标题中的文本是否与我在text.indexOf()函数中的内容匹配,如果是这样,它将在控制台上打印“true”,如果不是,则会打印“false”。 我不想检查文本是否完全匹配,我只想看看“EUR”是否包含在Div内。 这里是我的网页对象的代码文件Aurelia e2e:text.indexOf()不正确地比较字符串与包含在div中的字符串
this.checkIfEur = function(eur) {
var checkCurrency = element(by.className("m-l-sm"));
checkCurrency.getText().then(function (text) {
if (text.indexOf("EUR">= 0)) {
console.log("true");
}
else if (text.indexOf("EUR"<= 0)){
console.log("false");
}
});
};
<div class="currencies">
<span>Opening Currency</span>
<span class="m-l-sm">
<b>EUR 1,000</b>
</span><span class="m-l-sm">`
<b>GBP 5,000</b>
</span><!--anchor-->
</div>
的问题是,如果我是用zzzzzzz
更换EUR
控制台仍然会打印“真”。我想要被接受的文字似乎并不重要,它总是会打印出真实的。
我可能做这完全错了,任何帮助表示赞赏
答
而不是
if (text.indexOf("EUR">= 0))
应为(注意关闭父母的位置)
if (text.indexOf("EUR")>= 0)
答
更具体,如果你想检查“EUR”是否在一个字符串中,并且你正在使用这个
if (text.indexOf("EUR") >= 0) {
console.log("true");
} else if (text.indexOf("EUR") <= 0){
console.log("false");
}
,你就能更好地运用这个
if (text.indexOf("EUR") > -1) {
console.log("true");
} else{
console.log("false");
}
,或者如果你只是想记录的结果,你可以做到这一点
console.log("Found EUR in string:", text.indexOf("EUR") > -1);
,也看到了indexOf
+0
非常感谢您的帮助,我很高兴知道自己在正确的轨道上,令人沮丧的是它是由一些如此之小的东西造成的! – Edmond
感谢例子您的帮助! – Edmond