在前端开发中,经常需要查找字符串中是否包含某个子串。在 ES6 中,我们可以使用 String.prototype.indexOf() 方法,但是这个方法存在一些问题,比如不能查找 Unicode 字符串,返回值不直观等。ES7 中新增了 String.prototype.includes() 方法,可以很好地解决这些问题。
String.prototype.includes() 方法的定义
String.prototype.includes() 方法用于判断一个字符串是否包含另一个字符串。它的定义如下:
--------------------------- ----------
其中,str
表示要查找的原始字符串,searchString
表示要查找的子串,position
表示从哪个位置开始查找。如果省略 position
参数,则从字符串的开头开始查找。
该方法返回一个布尔值,表示是否找到了子串。
String.prototype.includes() 方法的优点
相比于 String.prototype.indexOf() 方法,String.prototype.includes() 方法有以下优点:
- 支持查找 Unicode 字符串。
- 返回值直观,不需要进行类型转换。
- 支持从指定位置开始查找。
示例代码
下面是一些示例代码,演示了如何使用 String.prototype.includes() 方法。
查找子串
----- --- - ------ ------- ----------------------------------- -- ---- ----------------------------------- -- -----
指定位置开始查找
----- --- - ------ ------- --------------------------------- ---- -- ----
查找 Unicode 字符串
----- --- - --------------- ------------------------------------ -- ---- ------------------------------------ -- ---- ------------------------------------------ -- ----
总结
String.prototype.includes() 方法是 ES7 中新增的一个字符串查找方法,它可以很好地解决 String.prototype.indexOf() 方法存在的一些问题。在实际开发中,我们应该优先使用 String.prototype.includes() 方法来查找字符串中的子串。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6613460dd10417a2223a7717