GA黄金甲

js中call的用法

call 要领允许函数在指定工具的上下文中执行,用于:(1)更改函数的 this 绑定;(2)转达特殊参数;(3)模拟继续,建设一个新工具并继续另一个工具的属性和要领。

call 要领在 JavaScript 中的用法

界说:

call 要领允许一个函数在指定的工具(thisArg)上下文中被挪用,纵然该函数最初不是绑定到该工具。

语法:

function.call(thisArg, arg1, arg2, ...)

登录后复制

其中:

function:要挪用的函数。

thisArg:指定函数执行时 this 要害字所绑定的工具。

arg1, arg2, …:要转达给函数的参数。

用法:

更改函数的执行上下文:

call 要领可以用来更改函数的执行上下文,即 this 要害字所绑定的工具。这在需要在差别工具间共享要领的情形下很是有用。

例如:

const person1 = { name: "John" };
const person2 = { name: "Jane" };

function greet() {
  console.log(`Hello, ${this.name}!`);
}

// 使用 call 更改执行上下文
greet.call(person1); // 输出:"Hello, John!"
greet.call(person2); // 输出:"Hello, Jane!"

登录后复制

转达特殊参数:

call 要领还可以用来转达特殊参数给函数。这在需要向函数动态转达参数的情形下很是有用。

例如:

function addNumbers(a, b) {
  return a + b;
}

// 使用 call 转达特殊参数
const result = addNumbers.call(null, 1, 2, 3); // 输出:6

登录后复制

模拟继续:

call 要领可以用来模拟继续,即建设一个新工具并继续另一个工具的属性和要领。

例如:

const Parent = function (name) {
  this.name = name;
};

Parent.prototype.greet = function () {
  console.log(`Hello, ${this.name}!`);
};

const Child = function (name) {
  Parent.call(this, name); // 挪用父类结构函数
};

// 继续父类要领
Child.prototype = Object.create(Parent.prototype);

const child = new Child("John");
child.greet(); // 输出:"Hello, John!"

登录后复制

注重:

call 要领只会更改函数的执行上下文,不会永世绑定该函数到指定的工具。

关于箭头函数,call 要领不起作用。

以上就是js中call的用法的详细内容,更多请关注本网内其它相关文章!

免责说明:以上展示内容泉源于相助媒体、企业机构、网友提供或网络网络整理,版权争议与本站无关,文章涉及看法与看法不代表GA黄金甲滤油机网官方态度,请读者仅做参考。本文接待转载,转载请说明来由。若您以为本文侵占了您的版权信息,或您发明该内容有任何涉及有违公德、冒犯执法等违法信息,请您连忙联系GA黄金甲实时修正或删除。

相关新闻

联系GA黄金甲

18523999891

可微信在线咨询

事情时间:周一至周五,9:30-18:30,节沐日休息

QR code
【网站地图】【sitemap】