站長博客: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方法的參數是一個正則表達式。代碼以下:.net
var string = "foo", expr = /oo/; string.search(expr);// 返回1
lodash includes方法
使用Javascript工具庫lodash的includes方法,該方法返回一個布爾值,代碼以下:prototype
_.includes('foobar', 'ob'); // → true
RegExp正則表達式
使用正則表達式的match來判斷是否包含,代碼以下:code
var string = "foo", expr = /oo/; // no quotes here expr.test(string);//true
Match方法
使用match的方法,該方法字符串不匹配的話就返回null,代碼以下:ip
var string = "foo", expr = /oo/, expr2 = /oa/; string.match(expr);//["oo", index: 1, input: "foo", groups: undefined] string.match(expr2);//null
總結
根據國外大神的測試結果顯示,indexOf在速度上多是最快的,所以推薦你們在平常中仍是常用indexOf這個方法。字符串