JavaScriptで文字列の部分一致をチェックするには

目的

JavaScriptで、substrやString.contains()のようなことをしたい

方法

  • includes (ES6)
var string = "javascript";
var substring = "script";
string.includes(substring);
  • indexOf (ES5以下)
var string = "javascript";
var substring = "script";
string.indexOf(substring) !== -1;
// indexOfはstringの中のsubstringの位置を返す。見つからなければ-1
  • search
var string = "javascript",
var expr = /script/;
string.search(expr);
  • lodash includes
var string = "javascript";
var substring = "script";
_.includes(string, substring);
var string = "javascript",
var expr = /script/;
expr.test(string);
  • Match
var string = "javascript",
var expr = /script/;
string.match(expr);

indexOfが一番パフォーマンスが良い