Câu hỏi phỏng vấn Javascript
Câu hỏi

Bạn có thể đưa ra một ví dụ về hàm curry và giải thích tại sao cú pháp này lại có ích?

Câu trả lời

Ví dụ về một hàm curry trong JavaScript có thể như sau:

function sum(a) {
  return (b) => {
    return (c) => {
      return a + b + c;
    };
  };
}

const addOne = sum(1);
const addOneAndTwo = addOne(2);
const result = addOneAndTwo(3); // Kết quả là 6

Trong ví dụ trên, hàm sum được curry hóa để nhận từng đối số một lần. Đầu tiên, nó nhận đối số a, sau đó trả về một hàm mới nhận đối số b, và cuối cùng là hàm nhận đối số c. Khi tất cả các đối số đã được cung cấp, nó sẽ thực hiện phép cộng và trả về kết quả.

Lợi ích của cú pháp này là:

  1. Ứng dụng một phần (Partial Application): Curry hóa cho phép bạn tạo ra các hàm mới từ một hàm hiện có bằng cách cố định một số đối số. Điều này giúp tái sử dụng mã nguồn và tạo ra các hàm với mục đích cụ thể từ m...
Bạn cần đăng nhập để xem
middle

middle

Gợi ý câu hỏi phỏng vấn

junior

Trong Javascript, đây có phải là một pure function không?

middle

Kết quả đoạn code sau là gì? Hãy giải thích tại sao?

middle

Bạn biết gì về AMD (Asynchronous Module Definition) và CommonJS trong Javascript?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào