Ich habe eine js-Lib geschrieben, die in ie8 arbeiten muss und ich wurde gebeten, jQuery nicht als Teil der Implementierung zu verwenden. Ein Teil der js lib erfordert das Durchsuchen eines Arrays nach einem passenden Wert. Moderne Browser unterstützen die Array indexOf() - Funktion, die dies erreicht. Da meine js lib ie8 jedoch unterstützen muss, kann ich diese Funktion nicht verwenden. Anfangs schrieb ich die folgende benutzerdefinierte Funktion:js Array-Suchfunktion für ie8
function inArray(anArray, aValue)
{
for (var i = 0; i < anArray.length; i++)
if (anArray[i] === aValue) return true;
//value was not in array
return false;
}
jedoch heute Morgen es fiel mir ein, dass es besser wäre, diese mit prototypische Vererbung zu schreiben. Was wäre eine gute Möglichkeit, dies anhand der prototypischen Vererbung neu zu schreiben? Gibt es auch eine Möglichkeit, den direkten Quellcode für den ES-Standard zu verwenden, die indexOf() -Funktion zu kopieren und in meine benutzerdefinierte js-Bibliothek einzufügen? Nicht sicher, ob das möglich ist oder nicht, aber es scheint eine gute Möglichkeit zu sein, Snippets zu portieren, ohne das Rad neu zu erfinden.
Bessere Verwendung von Polyfills – Maxx
@Maxx: Polyfilling Array-Methoden auf IE8 ist problematisch: Sie können die Methoden nicht aufzählbar machen. –