Javascript搜检一个字符串是不是包括另一个字符串要领总结

站长博客: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://segmentfault.com/a/1190000018037747
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞