ECMAScript 2015 - ES6 là gì?
Hôm nay chúng ta bắt đầu tìm hiểu một thứ mới hơn về Javascript vừa được ra mắt vào năm 2015 đó là ECMAScript, đây có thể coi là được một phiên bản nâng cấp mới nhất dành cho Javascript nên phải học nó để khỏi tụt hậu phải không các bạn :)
Trước tiên chúng ta sẽ tìm hiểu định nghĩa của ES6 trước.
1. ECMAScript ES6 là gì?
ES6 là chữ viết tắt của ECMAScript 6, đây được coi là một tập hợp các kỹ thuật nâng cao của Javascript và là phiên bản mới nhất của chuẩn ECMAScript. ECMAScript do hiệp hội các nhà sản xuất máy tính Châu Âu đề xuất làm tiêu chuẩn của ngôn ngữ Javascript. Bạn cứ nghĩ xem hiện nay có khá nhiều trình duyệt Browser ra đời và nếu mỗi Browser lại có cách chạy Javascript khác nhau thì các trang web không thể hoạt động trên tất cả các trình duyệt đó được, vì vậy cần có một chuẩn chung để bắt buộc các browser phải phát triển dựa theo chuẩn đó.
ES6 ra đời vào năm 2015 nên cái tên ES2015 được lấy làm tên chính thức với nhiều tính năng mới, học hỏi các ngôn ngữ cấp cao khác. Hy vọng dần theo thời gian Javascript trở thành một ngôn ngữ lập trình hướng đối tượng.
Bài viết này được đăng tại [free tuts .net]
Phiên bản sắp ra trong năm 2017 đó là phiên bản ES7 cũng đang được nghiên cứu và phát triển, họ cũng nhắm đến các kiến thức mới lạ như async function, observer, .. Hy vọng sẽ có nhiều biến động mới.
2. Các chức năng mới của ES6
Bài này mình chỉ giới thiệu các chức năng mới mà ES6 đã tích hợp vào ngôn ngữ Javascript, vì vậy sẽ không có các ví dụ kèm theo mà thay vào đó sẽ được viết ở một bài cụ thể gần nhất.
Sau đây là một số chức năng mới thêm vào trong ES6.
- Block Scoped: Định nghĩa biến với từ khóa
let
, cách định nghĩa này thì biến chỉ tồn tại trong phạm vi khối của nó (Block Scope) - Destructuring Assignments: Bạn có thể khởi tạo các biến từ một mảng bằng một dòng code đơn giản.
- Default Parameters: Bạn có thể gán giá trị mặc định cho các tham số.
- Rest Parameter: Tham số không giới hạn
- Arrow function: Bạn có thể tạo hàm bằng cách sử dụng dấu mũi tên
=>
. - Template String: Tạo templaet HTML cực kì đơn giản
- Weak, Set: các kiểu dữ liệu phức tạp mới
- Iterables và iterators
- Class, import
- ...
Còn khá nhiều tính năng nhưng mình không liệt kê thêm, bạn có thể theo dõi toàn bộ series này để hiểu rõ hơn. Các tính năng mới của ES6 được đánh giá tương đối khó học, vì vậy nếu bạn không vững các kiến thức Javascript căn bản thì bạn không thể học ES6 được.
Hiện nay các JS Framework như NodeJS, Angular2, React Native ... đều sử dụng ES6 nên để học được các framework đó thì ban phải thành thạo Javascript nói chung và ES6 nói riêng.
3. Một số phiên bản khác của ES6
ES6 là phiên bản mới nhất tính đến thời điểm hiện tại là tháng 1 năm 2017, các phiên bản khác của ES6 bao gồm:
- ECMAScript 5 (December 2009): Phiên bản này hầu hết các trình duyệt đều hỗ trợ, nó cải tiến và bổ sung thêm một số thư viện chuẩn, sử dụng chế độ strict mode nghiêm ngặt.
- ECMAScript 5.1 (June 2011): ES5 đã được xem như là một chuẩn ISO, phiên bản này đã sửa một số lỗi nhỏ.
- ECMAScript 6 (June 2015): Là phiên bản hiện tại, bổ sung nhiều cú pháp và thư viện.
- ECMAScript 2016: Hay còn gọi là ES7, đây là phiên bản tương lai chưa được public, được hứa hẹn có nhiều bổ sung giúp Javascript trở thành ngôn ngữ sử dụng được hầu hết ở mọi môi trường.
4. Lời kết
Nói về lý thuyết thì dài dòng và khó hiểu nên mình không trình bày nhiều về lý thuyết nữa để tránh sử dụng những từ không đúng, hy vọng qua series này sẽ giúp ích các bạn trong việc nghiên cứu ES6 để làm tiền đề học ES7 sắp ra đời.
Qua bài này hy vọng bạn đã hiểu được khái niệm ES6 là gì, hẹn gặp lại các bạn ở bài tiếp theo.