使用 String.includes() 检查字符串是否包含子字符串
Check if a String contains a Substring in JavaScript
使用该String.includes()
方法检查字符串是否包含子字符串,例如myString.includes('substring')
. 如果子字符串包含在字符串中,则该String.includes
方法返回
,否则返回。true
false
索引.js
const string = 'hello world'; const substring = 'hello'; console.log(string.includes(substring)); // 👉️ true if (string.includes(substring)) { // 👉️ substring is contained in the string }
我们使用
String.includes
方法来检查字符串中是否包含子字符串。
如果子字符串包含在字符串中,则该String.includes()
方法返回true
,否则返回false
。
该
String.includes
方法区分大小写。要对字符串中是否包含子字符串进行不区分大小写的检查,请将两个字符串都转换为小写。索引.js
const string = 'HELLO world'; const substring = 'hello'; // 👇️ true console.log( string.toLowerCase().includes(substring.toLowerCase()) ); if (string.toLowerCase().includes(substring.toLowerCase())) { // 👉️ substring is contained in the string }
使用 String.indexOf() 检查字符串是否包含子字符串
检查子字符串是否包含在 JavaScript 字符串中:
- 调用
indexOf
字符串上的方法,将子字符串作为参数传递给它。 - 有条件地检查返回值是否不等于
-1
。 - 如果返回值不等于
-1
,则字符串包含子字符串。
索引.js
const string = 'hello world'; const substring = 'hello'; const index = string.indexOf(substring); console.log(index); // 👉️ 0 if (string.indexOf(substring) !== -1) { // 👉️ substring is contained in the string }
该
String.indexOf
方法返回子字符串的起始索引,或者-1
子字符串是否不包含在字符串中。代码示例中的子字符串包含在从 index 开始的字符串中
0
。因此
indexOf
方法返回0
.
我们的if
块只有在String.indexOf
方法没有返回时才会运行-1
。该方法仅-1
在子字符串不包含在字符串中时返回。
您选择哪种方法是个人喜好的问题。我会使用该
String.includes()
方法,因为它更易于阅读且更直接。