Polyfill là gì

  -  

Introduction

Chúng ta có tương đối nhiều cách để cung ứng viết javascript mang đến phần nhiều trình chú tâm phiên bạn dạng cũ (IE 8, IE 9...), một trong số chúng là sử dụng Polyfill.Quý Khách đã xem: Polyfill là gì

What’s a polyfill?


*

Polyfill là 1 đoạn code để chỉ cho browser các phương pháp để implement những javascript feature. Một khi họ sẽ áp dụng polyfill cho một function nào kia thì sau đó chúng ta sẽ không yêu cầu lo ngại về bài toán liệu function hay method ta vừa viết đã đạt được browser tư vấn hay không nữa.

Bạn đang xem: Polyfill là gì

Polyfill gồm cách làm vận động tương đối đơn giản như sau:

kiểm tra xem feature dành được browser tư vấn tuyệt khôngtrường hợp browser ko tư vấn, nó vẫn add code nhằm support vấn đề implement feature

Lấy ví dụ về method Array.prototype.find, trong ngôi trường hợp browser ko support Array.prototype.find, nó vẫn hướng dẫn browser cách để implement:

Using Polyfills

Về cơ phiên bản, có 2 cách để áp dụng polyfill:

Polyfill manually: theo cách bằng tay (giống như ta làm cho sống trên)Polyfill library: add các polyfill cùng một lúc thông qua thư viện

Polyfilling manually

Trước tiên họ buộc phải search polyfill mà lại chúng ta buộc phải, có thể thông qua google, bây giờ phần đông các function giỏi method bắt đầu nhưng các browser cũ không nhiều hỗ trợ đều phải có sẵn polyfill trên MDN.

Sau Lúc kiếm được polyfill phù hợp, chúng ta cũng có thể add nó vào nlỗi đoạn code trên.

Polyfill library

Lưu ý polyfill là một phần của shim. Shim là 1 trong những thư viện hỗ trợ các API cá biệt hoàn toàn cho những browser cũ mà không cung cấp các API cùng thương hiệu.

Xem thêm: Tìm Hiểu Ưu Nhược Điểm Của Phần Mềm Whatsapp Là Gì, Whatsapp Là Gì

Using cutting-edge JavaScript features

Trong khi bạn cũng có thể sử dụng Babel - là tool với công dụng chính là compile Javascript, vào quá trình compile nó rất có thể phát âm các file js, sau đó convert các file đó về dạng cơ mà browser hoàn toàn có thể gọi được.

What if polyfills aren’t enough?

Nếu vào trường đúng theo polyfill vẫn không đủ nhằm support một feature như thế nào kia, thì bọn họ bắt buộc suy xét lại một chút:

Liệu bao gồm bắt buộc dùng đúng chuẩn feature đấy cho những browser không giống nhau không? bạn cũng có thể sử dụng qua một feature khác tương đương nhưng bảo vệ những browser hồ hết supportHoặc bạn có thể xử lý theo hướng không giống nhưng mà ko bắt buộc sử dụng đến feature đấy, tốt thậm chí còn là không nên đến javascript?

Không bao gồm chiến thuật nào là tối ưu, tùy theo trường thích hợp nhưng bạn có thể áp dụng các hướng xử lý không giống nhau làm thế nào để cho tương xứng nhất.

Xem thêm: Experiences Là Gì, Nghĩa Của Từ Experience, Experience Là Gì, Nghĩa Của Từ Experience

How to lớn tell if a browser supports the feature?

Để check coi feature mà lại họ vẫn áp dụng được những browser nào cung ứng, ta có thể dùng caniuse.com. Viết javascript feature mà bọn họ muốn check, tiếp đến bạn cũng có thể coi công dụng, vd như cùng với Array.prototype.find:


*

*

Beware the cost of JavaScript

lúc bọn họ áp dụng polyfill, đồng nghĩa với câu hỏi chúng ta vẫn thêm những dòng code javascript hơn. Một khi con số tệp tin js quá rộng, cũng trở nên khiến những hình họa hưởng:

Những browser cũ thường xuyên được áp dụng trên hầu hết khối hệ thống cũ, Có nghĩa là bài toán buộc phải sở hữu con số tệp tin js béo đã ảnh hưởng đến performanceSố lượng file js càng những, quá trình Javascript bundle sẽ càng mất nhiều thời gian hơn

Summary

Bài viết nhằm mục tiêu share về phương pháp để tư vấn javascript cùng với các browser cũ qua bài toán sử dụng Polyfill với các tlỗi viện tuyệt các tool liên quan. Bài viết còn những tinh giảm, cảm ơn chúng ta đã đoạt thời hạn quan sát và theo dõi.