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:

javascript Copy
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...
middle

middle

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

middle

Khi nào cần sử dụng asyncdefer trong javascript?

middle

3 giai đoạn của event propagation trong Javascript là gì?

senior

Triển khai Singleton Design Pattern trong Javascript như thế nào?

Bình luận

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

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