快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

js如何实现apply函数

这篇文章主要介绍了js如何实现apply函数,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

成都创新互联公司 - 电信内江机房,四川服务器租用,成都服务器租用,四川网通托管,绵阳服务器托管,德阳服务器托管,遂宁服务器托管,绵阳服务器托管,四川云主机,成都云主机,西南云主机,电信内江机房,西南服务器托管,四川/成都大带宽,服务器机柜,四川老牌IDC服务商

apply 函数的实现步骤:

    1. 判断调用对象是否为函数,即使我们是定义在函数的原型上的,但是可能出现使用 call 等方式调用的情况。

    1. 判断传入上下文对象是否存在,如果不存在,则设置为 window 。

    1. 将函数作为上下文对象的一个属性。

    1. 判断参数值是否传入

    1. 使用上下文对象来调用这个方法,并保存返回结果。

    1. 删除刚才新增的属性

    1. 返回结果

// apply 函数实现Function.prototype.myApply = function(context) {
  // 判断调用对象是否为函数
  if (typeof this !== "function") {
    throw new TypeError("Error");
  }

  let result = null;

  // 判断 context 是否存在,如果未传入则为 window
  context = context || window;

  // 将函数设为对象的方法
  context.fn = this;

  // 调用方法
  if (arguments[1]) {
    result = context.fn(...arguments[1]);
  } else {
    result = context.fn();
  }

  // 将属性删除
  delete context.fn;

  return result;};

感谢你能够认真阅读完这篇文章,希望小编分享的“js如何实现apply函数”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


新闻标题:js如何实现apply函数
网站地址:http://6mz.cn/article/pddsdp.html

其他资讯