在JavaScript中调用和应用之间有什么区别?

在JavaScript中,.call和.apply被视为函数对象的方法。

.call方法

用调用方法计算参数的数量。它接受一个或多个参数作为对象。

语法如下:

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

.apply方法 

要将数组用作参数,请使用.apply。它需要一个数组作为第二个参数。

语法如下:

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

示例

让我们看一个同时显示call和apply方法的示例:

<!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>