我一直在做測試,如果一個值存在於一個數組中,並不斷收到indexOf('textvalue')的匹配。如何測試數組項的文本是否包含子字符串?
但是,我的'textvalue'將是一個子字符串,因此不會拉比賽。這是因爲我將字段名稱傳遞給方法,只需要刪除「Door:Front Left」;文本通過匹配「門」上的數組項。有誰知道我能做到這一點?
這裏的示例代碼我工作:
(spnSelectedDisclosures將選定字段列表,這是消除從文本,這是分號分隔以前字段選擇的代碼。 )
var currentText = $("#spnSelectedDisclosures").text();
var existingArr = currentText.split(";")
for (i=0;i < existingArr.length;i++) {
var indexItem = " " + existingArr[i].toString(); // why is this still an object, instead of a string? Adding a space to it was a desperate try to make indexItem a string variable.
if (indexItem.contains(substringText)) { // offending line, saying the object has no method 'contains'
alert("there's been a match at: " + i);
textToRemoveIndex = i;
break;
}
}
var textToRemove = existingArr[textToRemoveIndex];
var newText = currentText.replace(textToRemove,"");
$("#spnSelectedDisclosures").text(newText);
好的。我以直接的方式討論這個問題。這也是有道理的。只需要查找索引是一個正數,並且這基本上意味着「包含」。多謝你們!另外,感謝關於.contains()的兼容性提及。 – grayboat