首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

string.includes

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

语法

代码语言:javascript
复制
str.includes(searchString[, position])

参数

searchString要在此字符串中搜索的字符串。

position可选。从当前字符串的哪个索引位置开始搜寻子字符串;默认值为0。

返回值

如果当前字符串包含被搜寻的字符串,就返回true;否则,返回false。

描述

这个方法可以帮你判断一个字符串是否包含另外一个字符串。

区分大小写

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

代码语言:javascript
复制
'Blue Whale'.includes('blue'); // returns false

示例

使用includes()

代码语言:javascript
复制
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

Polyfill

这个方法已经被加入到 ECMAScript 6 标准中,但未必在所有的 JavaScript 实现中都可以使用。然而,你可以轻松地polyfill这个方法:

代码语言:javascript
复制
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;
    }
  };
}

规范

Specification

Status

Comment

ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'String.prototype.includes' in that specification.

Standard

Initial definition.

ECMAScript Latest Draft (ECMA-262)The definition of 'String.prototype.includes' in that specification.

Living Standard

浏览器兼容性

Feature

Chrome

Edge

Firefox

Internet Explorer

Opera

Safari

Basic Support

41

(Yes)

18 — 48 (as contains) 40

No

(Yes)

9

Feature

Android

Chrome for Android

Edge mobile

Firefox for Android

IE mobile

Opera Android

iOS Safari

Basic Support

(Yes)

(Yes)

(Yes)

18 — 48 (as contains) 40

No

(Yes)

9

扫码关注腾讯云开发者

领取腾讯云代金券