Babel (trình biên dịch)

Bách khoa toàn thư mở Wikipedia
(Đổi hướng từ Babel)
Babel.js
Thiết kế bởiSebastian McKenzie
Phát triển bởiContributors
Phiên bản ổn định
7.8.6 / 27 tháng 2 năm 2020; 4 năm trước (2020-02-27)[1]
Kho mã nguồn
Viết bằngJavaScript
Hệ điều hànhLinux, macOS, Solaris, FreeBSD, OpenBSD, AIX, Microsoft Windows
Thể loạiTrình biên dịch
Giấy phépMIT[2]
Websitebabeljs.io

Babel là một trình biên dịch Javascript mã nguồn mởmiễn phí có chức năng chính dùng để biên dịch ECMAScript thành phiên bản tương thích ngược cho JavaScript có thể chạy trên các môi trường JavaScript cũ hơn. Babel là công cụ phổ biến để sử dụng các tính năng mới nhất của Javascript.[3]

Các nhà phát triển có thể sử dụng các tính năng mới của JavaScript bằng cách sử dụng Babel để chuyển đổi mã nguồn của họ thành phiên bản JavaScript mà các trình duyệt hiện hành có thể xử lý.[4] Babel core được tải về 5 triệu lần mỗi tháng năm 2016, và tăng lên 16 triệu vào năm 2019.[5][6]

Các plugin Babel được sử dụng để chuyển đổi các cú pháp không phổ biến thành các cú pháp có thể tương thích ngược với phiên bản cũ. Một ví dụ như, hàm mũi tên (arrow function), được sử dụng trong ES6, được chuyển đổi thành các hàm khai báo thông thường[7] Các cú pháp Javscript không chuẩn như JSX cũng có thể được chuyển đổi.[8][9]

Babel bao gồm các polyfill để hỗ trợ các tính năng mà một môi trường Javascript cũ không có. Ví dụ các method tĩnh như Array.frombuilt-ins như Promisechỉ khả dụng trong ES6+, nhưng có thể được sử dụng trong các môi trường Javascript cũ nếu có Babel polyfill.[10]

Xem thêm[sửa | sửa mã nguồn]

Tham khảo[sửa | sửa mã nguồn]

  1. ^ “Babel.js Latest Release”. Truy cập ngày 29 tháng 2 năm 2020.
  2. ^ “babel/LICENSE at master”. GitHub. Truy cập ngày 12 tháng 5 năm 2018.
  3. ^ “Technology Radar | Emerging Technology Trends for 2017 | ThoughtWorks”. www.thoughtworks.com. Truy cập ngày 12 tháng 5 năm 2018.
  4. ^ “Why Babel Matters | codemix”. codemix.com. Truy cập ngày 12 tháng 5 năm 2018.
  5. ^ “The State of Babel · Babel”. babeljs.io. Truy cập ngày 12 tháng 5 năm 2018.
  6. ^ “Babel's Funding Plans · Babel”. babeljs.io. Truy cập ngày 1 tháng 8 năm 2020.
  7. ^ “Plugins · Babel”. babeljs.io. Truy cập ngày 5 tháng 7 năm 2019.
  8. ^ “Introducing JSX - React”. reactjs.org. Truy cập ngày 12 tháng 5 năm 2018.
  9. ^ “Using React and building a web site on Azure”. Microsoft Faculty Connection. Truy cập ngày 12 tháng 5 năm 2018.
  10. ^ “@babel/polyfill”. babeljs.io. Truy cập ngày 5 tháng 7 năm 2019.

Liên kết ngoài[sửa | sửa mã nguồn]