js判断字符串包含某个字符(教你查找字符串中包含某字符串)

includes 函数 语法

str.includes(searchString[, position])

includes() 方法用于判断一个字符串是否包含在另一个字符串中,根据情况返回 true 或 false。

includes() 方法是区分大小写的,例如,下面的表达式会返回 false :

\’Blue Whale\’.includes(\’blue\’); // returns false

兼容补丁(polyfill)

if (!String.prototype.includes) {
String.prototype.includes = function(search, start) {
\’use strict\’;
if (typeof start !== \’number\’) {
start = 0;
}

if (start + search.length > this.length) {
return false;
} else {
return this.indexOf(search, start) !== -1;
}
};
}

示例

var str = \’To be, or not to be, that is the question.\’;

console.log(str.includes(\’To be\’)); // true
console.log(str.includes(\’question\’)); // true
console.log(str.includes(\’nonexistent\’)); // false
console.log(str.includes(\’To be\’, 1)); // false
console.log(str.includes(\’TO BE\’)); // false

indexOf 函数语法

str.indexOf(searchValue [, fromIndex])

参数

searchValue

要被查找的字符串值。

如果没有提供确切地提供字符串,searchValue 会被强制设置为 “undefined”, 然后在当前字符串中查找这个值。

举个例子:’undefined’.indexOf() 将会返回0,因为 undefined 在位置0处被找到,但是 ‘undefine’.indexOf() 将会返回 -1 ,因为字符串 ‘undefined’ 未被找到。

fromIndex 可选

数字表示开始查找的位置。可以是任意整数,默认值为 0。

如果 fromIndex 的值小于 0,或者大于 str.length ,那么查找分别从 0 和str.length 开始。

举个例子,’hello world’.indexOf(‘o’, -5) 返回 4 ,因为它是从位置0处开始查找,然后 o 在位置4处被找到。另一方面,’hello world’.indexOf(‘o’, 11) (或 fromIndex 填入任何大于11的值)将会返回 -1 ,因为开始查找的位置11处,已经是这个字符串的结尾了。

示例

var anyString = \”Brave new world\”;

console.log(\”The index of the first w from the beginning is \” + anyString.indexOf(\”w\”));
// logs 8
console.log(\”The index of the first w from the end is \” + anyString.lastIndexOf(\”w\”));
// logs 10

console.log(\”The index of \’new\’ from the beginning is \” + anyString.indexOf(\”new\”));
// logs 6
console.log(\”The index of \’new\’ from the end is \” + anyString.lastIndexOf(\”new\”));
// logs 6

(0)
xswh的头像xswh注册用户

相关推荐

发表回复

登录后才能评论