首页  >  文章  >  web前端  >  调用、应用和绑定方法 — Javascript

调用、应用和绑定方法 — Javascript

Susan Sarandon
Susan Sarandon原创
2024-11-03 01:09:29928浏览

Call, Apply & Bind Methods — Javascript

JS 中的每个函数都可以访问此关键字。

1。致电

这类似于函数借用,我们可以使用函数/从一个对象借用函数并将它们与另一个对象一起使用,而不是重新声明它们。

let name = {
  firstnName: 'Manoj',
  secondName: 'Ravi',
  fullName: function (district, state) {
    return `${this.firstName} ${this.secondName} from ${district}, ${state}.`;
  }
};

let getFullDetails = function(district, state) {
  return `${this.firstName} ${this.secondName} from ${district}, ${state}.`;
};

name.fullName('Chennai', 'TN');  // Manoj Ravi from Chennai, TN.
getFullDetails.call(name, 'Chennai', 'TN');  // Manoj Ravi from Chennai, TN.

let name2 = {
  firstnName: 'Sanjay',
  secondName: 'Ravi',
};

name.fullName.call(name2, 'Coimbatore', 'TN');  // Sanjay Ravi from Coimbatore, TN.
getFullDetails.call(name2, 'Coimbatore', 'TN');  // Sanjay Ravi from Coimbatore, TN.

其他参数可以以逗号分隔的格式共享。

2。申请

与调用类似,唯一的区别是我们传递参数的方式。我们不是单独传递它们(以逗号分隔的格式),而是将它们作为数组传递。

let getFullDetails = function(district, state) {
  return `${this.firstName} ${this.secondName} from ${district}, ${state}.`;
};

let name = {
  firstnName: 'Manoj',
  secondName: 'Ravi'
};
getFullDetails.call(name, ['Chennai', 'TN']);  // Manoj Ravi from Chennai, TN.

let name2 = {
  firstnName: 'Sanjay',
  secondName: 'Ravi'
};
getFullDetails.call(name2, ['Coimbatore', 'TN']);  // Sanjay Ravi from Coimbatore, TN.

3。绑定

与call类似,该方法不会立即调用函数;相反,它绑定函数的引用并返回一个可以稍后调用的新函数。

let getFullDetails = function(district, state) {
  return `${this.firstName} ${this.secondName} from ${district}, ${state}.`;
};

let name = {
  firstnName: 'Manoj',
  secondName: 'Ravi'
};


let printDetails = getFullDetails(name, 'Chennai', 'TN');
printDetails();  // Manoj Ravi from Chennai, TN.

感谢您的阅读!我希望您发现这个博客信息丰富且引人入胜。如果您发现任何不准确之处或有任何反馈,请随时告诉我。

以上是调用、应用和绑定方法 — Javascript的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn