IE8 字符串包含判断:使用 indexOf 方法
在 IE8 中,可以使用 'indexOf' 方法来判断字符串是否包含某个子串。具体实现如下:
var str = 'hello world';
var substr = 'world';
if (str.indexOf(substr) !== -1) {
// 包含子串
} else {
// 不包含子串
}
如果要判断字符串中是否包含多个子串,可以使用 'indexOf' 方法结合循环来实现:
var str = 'hello world';
var substrs = ['hello', 'world'];
var containsAllSubstrs = true;
for (var i = 0; i < substrs.length; i++) {
if (str.indexOf(substrs[i]) === -1) {
containsAllSubstrs = false;
break;
}
}
if (containsAllSubstrs) {
// 包含所有子串
} else {
// 不包含所有子串
}
需要注意的是,在 IE8 中,'indexOf' 方法返回的是子串在字符串中的位置,如果不包含子串则返回 -1。因此判断条件需要使用 '!== -1',而不能简单地使用 '!== false'。
原文地址: https://www.cveoy.top/t/topic/hWrC 著作权归作者所有。请勿转载和采集!