Phương thức call

Phương thức call cho phép gọi một hàm với ngữ cảnh được chỉ định. Tham số đầu tiên của phương thức nên chỉ định ngữ cảnh của hàm, và các tham số còn lại - là các tham số của hàm.

Cú pháp

javascriptham.call(ngucanh, thamso1, thamso2...);

Ví dụ

Giả sử chúng ta có một phần tử input:

html<input id="elem" value="text">

Giả sử cũng có một hàm, nhận ba tham số:

javascriptfunction func(param1, param2, param3) {
  console.log(this.value + param1 + param2 + param3);
}

Hãy gọi hàm của chúng ta sao cho this bên trong hàm bằng với phần tử input của chúng ta, và đồng thời truyền cho nó các tham số là các số 1, 2 và 3:

javascriptlet elem = document.querySelector('#elem');
func.call(elem, 1, 2, 3);

Ví dụ

Giả sử hàm không nhận tham số:

javascriptfunction func() {
  console.log(this.value);
}

Trong trường hợp này, khi gọi hàm này thông qua call chỉ cần truyền tham số đầu tiên với ngữ cảnh:

javascriptlet elem = document.querySelector('#elem');
func.call(elem);

Xem thêm

  • phương thức apply,
    gọi một hàm với ngữ cảnh
  • phương thức bind,
    ràng buộc ngữ cảnh vào một hàm