1. ホーム
  2. javascript

[解決済み] Internet Explorer で .includes() が動作しない

2022-08-19 11:37:48

質問

このコードはインターネットエクスプローラで動作しません。何か代替案がありますか?

"abcde".includes("cd")

どのように解決するのですか?

String.prototype.includes は、あなたが書いているように、Internet Explorer (または Opera) ではサポートされていません。

代わりに、あなたは String.prototype.indexOf . #indexOf は、部分文字列の最初の文字が文字列内にある場合はそのインデックスを返し、そうでない場合は -1 . (配列の場合とほぼ同じです)

var myString = 'this is my string';
myString.indexOf('string');
// -> 11

myString.indexOf('hello');
// -> -1

MDN では includes を使った indexOf : https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/includes#Polyfill

編集: Opera は includes の時点で バージョン 28 .

EDIT 2: 現在のバージョンのEdgeは、この方式に対応しています。(2019年現在)