Computer >> Máy Tính >  >> Lập trình >> Javascript

Sự khác biệt giữa call và apply trong JavaScript là gì?

Trong JavaScript, .call và .apply được coi là một phương thức của đối tượng hàm.

phương thức .call

Đếm số đối số với phương thức gọi. Nó chấp nhận một hoặc nhiều đối số làm đối tượng.

Đây là cú pháp:

.call(object, “argument1”, “argument2”);

.apply method

Để sử dụng một mảng làm đối số, hãy sử dụng .apply. Nó yêu cầu một mảng làm đối số thứ 2 của nó.

Đây là cú pháp:

.apply(object, [“argument1”, “argument[]”]);

Ví dụ

Hãy xem một ví dụ hiển thị cả phương thức gọi và áp dụng:

<!DOCTYPE html>
<html>
   <head>
      <body>
         <script>
            var p = {
               q: "Hello"
            }
            function showResult(v) {
               document.write(this.q + " " + v);
            }
            showResult.call(p, "Amit"); // one or more objects as argument
            showResult.apply(p, ["World"]); // array as the second argument
         </script>
      </body>
   </head>
</html>