JavaScript 中 call 和 apply 的区别是什么?


在 JavaScript 中,.call 和 .apply 被认为是函数对象的一种方法。

.call 方法

使用 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>

更新于:2020-01-02

266 次浏览

职业起步

完成课程即可获得认证

开始
广告