资讯专栏INFORMATION COLUMN

Javascript检查一个字符串是否包含另一个字符串方法总结

pubdreamcc / 938人阅读

摘要:代码如下方法方法与类似,用来返回一个字符串在另一个字符串中的位置,如果没找到那就返回。唯一需要注意的是,方法的参数是一个正则表达式。

站长博客:https://www.pipipi.net/

ES6 includes 方法
当包含时返回true,不包含时返回false,代码实例如下:

var string = "foo";
        var substring1 = "oo";
        var substring2 = "oq";
        string.includes(substring1); //true
        string.includes(substring2); //false

ES5或者更老版本 indexOf方法
String.prototype.indexOf方法用来返回一个字符串在另一个字符串中的位置,如果没找到那就返回 -1 。代码如下:

var string = "foo",
    substring = "oo";
string.indexOf(substring) !== -1;//true

search方法
search方法与indexOf类似,用来返回一个字符串在另一个字符串中的位置,如果没找到那就返回-1,。唯一需要注意的是,search方法的参数是一个正则表达式。代码如下:

var string = "foo",
    expr = /oo/;
string.search(expr);// 返回1

lodash includes方法
使用Javascript工具库lodash的includes方法,该方法返回一个布尔值,代码如下:

_.includes("foobar", "ob");
// → true

RegExp正则表达式
使用正则表达式的match来判断是否包含,代码如下:

var string = "foo",
    expr = /oo/;  // no quotes here
expr.test(string);//true

Match方法
使用match的方法,该方法字符串不匹配的话就返回null,代码如下:

var string = "foo",
    expr = /oo/,
    expr2 = /oa/;
string.match(expr);//["oo", index: 1, input: "foo", groups: undefined]
string.match(expr2);//null

总结
根据国外大神的测试结果显示,indexOf在速度上可能是最快的,因此推荐大家在日常中还是经常使用indexOf这个方法。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/108892.html

相关文章

  • [JS进阶] 编写可维护性代码 (1)

    摘要:如果值是基本类型,则用操作符检查其类型。总结所有编程语言都需要可维护性良好的代码,这个很重要,因为大部分开发人员都花费大量时间维护他人的代码。 o(╯□╰)o 这并不是什么史诗巨作,没有非常深入去挖掘这类问题,只是从平常的JS代码习惯,参考书籍总结而来,希望对你有帮助的! 今天的web应用大至成千上万行的javascript代码,执行各种复杂的过程,这种演化让我们开发者必...

    Youngdze 评论0 收藏0
  • JavaScript面向对象精要》读书笔记

    摘要:解除引用的最佳手段是将对象变量设置为。字面形式允许你在不需要使用操作符和构造函数显示创建对象的情况下生成引用值。函数就是值可以像使用对象一样使用函数因为函数本来就是对象,构造函数更加容易说明。 JavaScript(ES5)的面向对象精要 标签: JavaScript 面向对象 读书笔记 2016年1月16日-17日两天看完了《JavaScript面向对象精要》(参加异步社区的活动送...

    GitCafe 评论0 收藏0
  • Javascript中的的对象——原型模式(Prototype)

    摘要:使用原型模式添加方法和属性在前面的章节中,已经学习过了如何定义一个构建新对象时使用的构造函数。向构造函数的中添加方法和属性是在对象被创建的时候为对象添加功能的另一种方式。让我们继续使用对象作为构造函数的原型属性。 本文原文来源:《Object-Oriented JavaScript》By Stoyan Stefanov本文翻译来源:赤石俊哉 原创翻译版权申明: 如果您是原文的原作者并且...

    岳光 评论0 收藏0
  • 高程3总结#第23章离线应用与客户端存储

    摘要:离线应用与客户端存储离线检测定义了属性来检测设备是在线还是离线。应用缓存还有很多相关的事件,表示其状态的改变。 离线应用与客户端存储 离线检测 HTML5定义了navigator.onLine属性来检测设备是在线还是离线。这个属性为true表示设备能上网,值为false表示设备离线。这个属性的关键是浏览器必须知道设备能否访问网络,从而返回正确的值 不同浏览器之间有小差异 IE6+...

    MobService 评论0 收藏0
  • 总结〕容易遗忘的JS知识点整理

    摘要:命名函数的赋值表达式另外一个特殊的情况是将命名函数赋值给一个变量。这是由于的命名处理所致,函数名在函数内总是可见的。当需要向回调函数传递参数时,可以创建一个匿名函数,在函数内执行真实的回调函数。 1.hasOwnProperty相关 为了判断一个对象是否包含自定义属性而不是原型链上的属性,我们需要使用继承自 Object.prototype 的 hasOwnProperty方法。has...

    explorer_ddf 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<