Heim > Web-Frontend > js-Tutorial > Javascript-Array-Polydateien: Karte, Filter

Javascript-Array-Polydateien: Karte, Filter

Patricia Arquette
Freigeben: 2024-12-17 06:47:25
Original
268 Leute haben es durchsucht

Javascript array polyfils: map, filter

Was sind Polyfills in Javascript?

Heutzutage unterstützt die neueste Version von JavaScript eine Vielzahl von Funktionen. Einige ältere Browser unterstützen jedoch nicht alle diese neuen Funktionen vollständig, was dazu führen kann, dass Ihre Logik in Browsern wie Internet Explorer (IE) nicht wie erwartet funktioniert.

Um die Kompatibilität mit älteren Browsern sicherzustellen, können Sie eine benutzerdefinierte Logik schreiben, die das Verhalten dieser neueren Funktionen nachahmt. Dieser benutzerdefinierte Code wird als „Polyfill“ bezeichnet.

In diesem Beitrag stelle ich Ihnen einige Beispiele für Polyfills für Array-Methoden zur Verfügung.

1. Karte:

    if (!Array.prototype.map) {
      try {
          Array.prototype.map = function(callback) {
              const arr = [];
              if (typeof callback !== "function") {
                  throw new Error("map callback is not a function");
              } else {
                  const len = this.length;
                  for (let i = 0; i < len; i++) {
                      const val = callback(this[i], i);
                      arr.push(val);
                  }
              }
              return arr;
          }
      } catch (err) {
          console.error(err);
      }
  }
Nach dem Login kopieren

Im obigen Code können Sie sehen, dass ich eine Kartenmethode zur Prototypenkette des Arrays hinzugefügt habe, wenn es keine native Kartenmethode gibt.

2. Filter:

if (!Array.prototype.filter) {
    try {
        Array.prototype.filter = function(callback) {
            const arr = [];
            if (typeof callback !== "function") {
                throw new Error("filter callback is not a function");
            } else {
                const len = this.length;
                for (let i = 0; i < len; i++) {
                    const val = callback(this[i], i);
                    if (val) {
                        arr.push(this[i]);
                    }
                }
            }
            return arr;
        }
    } catch (err) {
        console.error(err);
    }
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonJavascript-Array-Polydateien: Karte, Filter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage