Rumah > hujung hadapan web > tutorial js > Polyfill untuk Bind()

Polyfill untuk Bind()

王林
Lepaskan: 2024-08-12 18:32:59
asal
862 orang telah melayarinya

Dalam dunia dinamik pembangunan JavaScript, memastikan keserasian merentas penyemak imbas adalah yang terpenting. Satu alat penting dalam mencapai ini ialah kaedah bind(). Walau bagaimanapun, pelayar lama mungkin tidak menyokongnya sepenuhnya. Di sinilah polyfill datang untuk menyelamatkan.

Polifill pada asasnya ialah sekeping kod yang menyediakan fungsi yang tidak disokong secara asli oleh penyemak imbas lama. Dalam kes ini, kami akan mendalami cara membuat polifill untuk kaedah bind() untuk memastikan kod anda berfungsi dengan lancar merentas persekitaran yang berbeza.

Mari kita terokai cara membina polyfill yang penting ini.

Definisi : Kaedah Bind() pada asasnya membenarkan objek meminjam kaedah daripada objek lain tanpa menyalin.

Berikut ialah pecahan langkah demi langkah, polifill Bind.

Polyfill for Bind()

  1. Ln:1, Orang ialah objek, yang mempunyai sifat "nama" dan umur cetakan sebagai sifat fungsi. PrintAge di sini mencetak nama dan umur.

  2. Ln:8, Person2 hanyalah objek lain yang mempunyai sifat "nama" tetapi tiada fungsi printAge.

  3. Ln: 22, Dalam baris ini, kami memanggil fungsi myBind (iaitu polyfill) dan menyimpan hasilnya dalam pembolehubah bernama "bindFunc".

  4. Ln 12, di sinilah kami menulis polyfill untuk kaedah myBind kami. Dalam fungsi ini, kami mengambil Objek yang kami mahu tambahkan kaedah myBind dan argumen lain. Oleh kerana banyak hujah boleh diluluskan, jadi kami pada asasnya menyasarkan semua hujah menggunakan "...args".

  5. Seterusnya kita semak sama ada jenis "ini", iaitu fungsi "printAge" di sini adalah fungsi atau tidak, jika tidak kita buang ralat, jika tidak kita tetapkan fungsi itu kepada obj (person2) sebagai "obj.fn" yang dihantar kepada kami sebagai parameter dalam fungsi myBind kami. Tetapi oleh kerana kaedah "bind" mengembalikan fungsi yang dipanggil secara berasingan, jadi di sini juga kita mengembalikan fungsi dengan "...args2" sebagai hujah, ini bermakna kita boleh memberikan hujah tambahan kepadanya juga, yang tidak sepatutnya akan melalui polyfill.

  6. Ln 18, kami menyerahkan semua hujah kepada fungsi printAge kami. Kini ia mempunyai semua yang diperlukan dan boleh berfungsi seperti kaedah bind.

Nota: Daripada menghantar umur = 35 dalam panggilan kaedah myBind (Ln 22), kita boleh menyampaikannya sebagai hujah kepada bindFunc(35) juga, inilah sebabnya kami mengambil "...args2", untuk mengendalikan parameter atau argumen tambahan.

Jika anda menyukai penjelasan ini, mari berhubung di Twitter atau LinkedIn dan jika anda mempunyai sebarang maklum balas, beritahu saya dalam ulasan. Sangat membantu.

Twitter
LinkedIn

Atas ialah kandungan terperinci Polyfill untuk Bind(). 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan