当前位置: 首页 > news >正文

手写call方法

 Function.prototype.myCall=function (context,args) {console.log(arguments)//context 表示call里面的第一个参数也就是需要改变this指向的那个对象。//this表示这个方法//把这个方法挂到需要改变指向的对象身上调用,相当于把this指向了这个对象身上,从而达到改变this的作用。//argument是一个特殊的对象,可以获取方法传入的参数。context.fn=thislet arr = []for(let i =1;i<arguments.length;i++){console.log(arguments[i])//arr.push(arguments[i])arr.push('arguments[' + i + ']');}console.log(arr)console.log(arguments[1])eval('context.fn('+arr+')')//context.fn();delete context.fn}let person = {name:'tom',age:22,sex:'male',sayName:function(){console.log(this.name)},showInfo:function(name,age,sex){this.name=name;this.age=age;this.sex=sex;console.log('name:'+this.name+',age:'+this.age+',sex:'+this.sex)}}let person2={name:'tony'}person.showInfo('lily',22,'female')person.showInfo.myCall(person2,'john',11,'male') //name:john,age:11,sex:male

http://www.lryc.cn/news/173898.html

相关文章:

  • 基于FPGA的图像直方图统计实现,包括tb测试文件和MATLAB辅助验证
  • 数据库:Hive转Presto(一)
  • Responder
  • 基于下垂控制的并网逆变器控制MATLAB仿真模型
  • android获取RAM、CPU频率、系统版本、CPU核数
  • 微信小程序python+nodejs+php+springboot+vue 讲座预约系统
  • 嵌入式开发笔记:STM32的外设GPIO知识学习
  • 单片机论文参考:2、基于单片机的病床呼叫系统设计
  • 【C语言】结构体实现位段!位段有何作用?
  • msvcp140为什么会丢失?msvcp140.dll丢失的解决方法
  • Ingress Controller
  • 离线安装 K3S
  • Error系列-常见异常问题解决方案以及系统指令总结
  • c 各种例子
  • Flowable主要子流程介绍
  • 通过插件去除Kotlin混淆去除 @Metadata标记
  • 【docker】容器跟宿主机、其他容器通信
  • nginx重要配置参数
  • Docker 部署 PostgreSQL 服务
  • 【通信误码】python实现-附ChatGPT解析
  • 人与机器只能感知到可以分类的事物?
  • 2023华为杯数学建模竞赛E题
  • AIX360-CEMExplainer: MNIST Example
  • TouchGFX之自定义控件
  • Python中match...case的用法
  • 深度学习自学笔记二:逻辑回归和梯度下降法
  • 【Element】通知 Notification
  • vue+express、gitee pm2部署轻量服务器(20230923)
  • 前端教程-H5游戏开发
  • Nginx 关闭/屏蔽 PUT、DELETE、OPTIONS 请求