</>
⌕
Mid #this#call#apply#bind#polyfill

call, apply, bind khác nhau thế nào? Tự viết bind

⚡ Trả lời nhanh

`call(ctx, a, b)` và `apply(ctx, [a, b])` gọi hàm ngay với `this` chỉ định (khác ở cách truyền đối số). `bind(ctx, ...pre)` trả về hàm mới đã khóa `this` và đối số đầu (partial application), không gọi ngay; `this` đã bind không thể bị override bởi call/apply.

Ví dụ và bind tự viết

main.js · sửa được

Bản polyfill này đơn giản hóa: bản chuẩn còn xử lý khi gọi bằng new (bỏ qua ctx, giữ prototype) và đặt name/length cho hàm trả về.

Gọi ngayTruyền đối số
callcóliệt kê
applycómảng
bindkhông, trả hàm mớiliệt kê, có thể một phần
🃏 Ôn bằng flashcard