Function.prototype.call方法

发布时间 2023-06-12 22:22:56作者: 帅到被人砍的阿豪

根据标题可以看出call()方法是javaScript语言中Function内置函数prototype对象上的一个方法.
这就规定了call()的调用者必须是一个function函数
call()方法接收一个对象作为参数
主要作用是,将作为参数的这个对象作为调用者的prototype对象,这样调用者就能够使用参数对象中的所有方法和属性,并且调用此方法的同时调用者对象会立即执行
下面请看例子:

<script>
      let bb = {
        likeyou: "嗨嗨嗨,来喽",
      };
      let obj = {
        aa() {
          console.log("我执行了");
          return {
            like: "you",
            kiss: this.likeyou,
          };
        },
      };
      let c = typeof obj.aa === "function" ? obj.aa.call(bb) : obj.aa;
      console.log(c,"这里是c,与测是一个对象,likeyou属性为'嗨嗨嗨,来喽'");
    </script>
```js