Questo codice non funziona in Internet Explorer. Qualche alternativa?.includes() non funziona in Internet Explorer
"abcde".includes("cd")
Questo codice non funziona in Internet Explorer. Qualche alternativa?.includes() non funziona in Internet Explorer
"abcde".includes("cd")
String.prototype.includes
è, come si scrive, non è supportato in Internet Explorer (o Opera)
Invece è possibile utilizzare String.prototype.indexOf
. #indexOf
restituisce l'indice del primo carattere della sottostringa se si trova nella stringa, altrimenti restituisce -1
. (Proprio come l'Array equivalente)
var myString = 'this is my string';
myString.indexOf('string');
// -> 11
myString.indexOf('hello');
// -> -1
NDP ha un polyfill per includes
utilizzando indexOf
: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/includes#Polyfill
include() non è supportato dalla maggior parte dei browser. Le opzioni sono o di utilizzare
-polyfill da MDN https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/includes
o per utilizzare
-indexof()
var str = "abcde";
var n = str.indexOf("cd");
che vi dà n = 2
Questo è ampiamente supportato .
Questa la risposta corretta. Usa polyfilll da MDN – Sangar82
Se usi polyfill da MDN, _do non itera la tua stringa con 'for ... in'! _, Itererà su' String.prototype.includes' se lo definisci così. –
O semplicemente mettere questo in un file JavaScript e hanno una buona giornata :)
String.prototype.includes = function (str) {
var returnValue = false;
if (this.indexOf(str) !== -1) {
returnValue = true;
}
return returnValue;
}
Se si utilizza questo polyfill, non iterare la stringa con 'for ... in', itererà su' String.prototype.includes' se è definito in questo modo. –
Se si desidera continuare a utilizzare il Array.prototype.include()
in javascript è possibile utilizzare questo script: github-script-ie-include che converte automaticamente l'inclusione() alla funzione match() se rileva IE.
altra opzione utilizza sempre la string.match(Regex(expression))
su Opera 46.0 funziona –