What is the purpose of arrow functions in ES6?
Các phương án trả lời
Chọn một phương ánLời giảiChọn phương án để mở
Đáp án đúng: "To define functions with a shorter syntax". Arrow function (hàm mũi tên) của ES6 ra đời trước hết để viết hàm gọn hơn: bỏ từ khoá function, có thể bỏ ngoặc khi chỉ có một tham số và bỏ return khi thân là một biểu thức, rất tiện cho callback như map, filter hay hàm xử lý sự kiện trong React. "To create self-executing functions" sai vì hàm tự gọi (IIFE) viết được bằng cả function thường lẫn hàm mũi tên, đó không phải mục đích của cú pháp này. "To declare asynchronous functions" sai vì hàm bất đồng bộ được khai báo bằng từ khoá async từ ES2017, áp dụng cho cả hai kiểu hàm. "To bind the value of this inside a function" là điểm dễ gây tranh cãi: hàm mũi tên đúng là không có this riêng mà dùng this của phạm vi bao ngoài, nhờ vậy tránh phải gọi bind trong class component; nhưng đó là đặc điểm đi kèm, không phải ràng buộc this, vì bind, call hay apply đều không đổi được this của nó, và câu hỏi hỏi mục đích chung nên cú pháp ngắn gọn là đáp án được chọn.