Rumah > hujung hadapan web > tutorial js > Polyfils tatasusunan Javascript: peta, penapis

Polyfils tatasusunan Javascript: peta, penapis

Patricia Arquette
Lepaskan: 2024-12-17 06:47:25
asal
268 orang telah melayarinya

Javascript array polyfils: map, filter

Apakah polyfill dalam javascript?

Pada zaman moden, versi terkini JavaScript menyokong pelbagai ciri. Walau bagaimanapun, sesetengah penyemak imbas lama tidak menyokong sepenuhnya semua ciri baharu ini, yang mungkin menyebabkan logik anda tidak berfungsi seperti yang diharapkan dalam penyemak imbas seperti Internet Explorer (IE).

Untuk memastikan keserasian dengan penyemak imbas lama, anda boleh menulis logik tersuai yang meniru gelagat ciri yang lebih baharu ini. Kod tersuai ini dikenali sebagai "polifill."

Dalam siaran ini, saya akan memberikan anda beberapa contoh polyfill untuk kaedah tatasusunan.

1. peta:

    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);
      }
  }
Salin selepas log masuk

Dalam kod di atas anda boleh melihat saya menambah satu kaedah peta dalam rantaian prototaip tatasusunan jika tiada kaedah peta asli.

2. penapis:

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);
    }
}
Salin selepas log masuk

Atas ialah kandungan terperinci Polyfils tatasusunan Javascript: peta, penapis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan