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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论