Giải thích về phương thức call()
, aplly()
và bind()
trong Javascript?
Giải thích về phương thức call()
, aplly()
và bind()
trong Javascript?
Trong JavaScript, call()
, apply()
, và bind()
là ba phương thức quan trọng của Function, giúp chúng ta làm việc với từ khóa this
và các đối số của hàm một cách linh hoạt. Mỗi phương thức có cách sử dụng và mục đích riêng.
call()
Phương thức call()
cho phép bạn gọi một hàm với một giá trị this
được chỉ định và các đối số được truyền vào một cách rõ ràng. Cú pháp của call()
là func.call(thisArg, arg1, arg2, ...)
, trong đó thisArg
là giá trị this
muốn gán, và arg1, arg2, ...
là các đối số truyền vào hàm
apply()
Phương thức apply()
rất giống với call()
, nhưng thay vì truyền các đối số một cách rõ ràng, apply()
cho phép bạn truyền một mảng các đối số. Cú pháp của apply()
là func.apply(thisArg, [argsArray])
, với thisArg
là giá trị this
muốn gán, và [argsArray]
là mảng chứa các đối số
bind()
Phương thức bind()
tạo ra một hàm mới, có giá trị this
được ràng buộc với giá trị được cung cấp. Khác với call()
và apply()
, bind()
không tự động gọi hàm mà trả về một hàm mới với context this
đã được set. Cú pháp của bind()
là func.bind(thisArg[, arg1[, arg2[, ...]]])
, trong đó thisArg
là giá trị this
muốn gán, và arg1, arg2, ...
là các đối số mặc định cho hàm mới
call()
và ...middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào