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

建p2p网站openshift安装wordpress密码忘记

建p2p网站,openshift安装wordpress密码忘记,wordpress扩展字段,网页布局有哪些手写实现call#xff0c;apply和bind方法 call#xff0c;apply和bind方法均是改变this指向的硬绑定方法#xff0c;要想手写实现此三方法#xff0c;都要用到一个知识点#xff0c;即对象调用函数时#xff0c;this会指向这个对象#xff08;谁调用this就指向谁#…手写实现callapply和bind方法 callapply和bind方法均是改变this指向的硬绑定方法要想手写实现此三方法都要用到一个知识点即对象调用函数时this会指向这个对象谁调用this就指向谁 先设定一个测试函数及测试对象 function func(num1, num2) {console.log(this:, this)return num1 num2 }const testObj {test: 测试用的对象 }手写实现call方法 自己写的所以把方法名定义为myCall。实现func的this指向testObj,输出num1 num2的值。 测试用例 const res func.myCall(testObj, 1, 2); console.log(res:, res); // 输出this是{ test: 测试用的对象 } //num1 num2 计算结果 3第一步要实现任何函数都能使用这个myCall方法则该方法需要定义在原型上面因此: Function.prototype.myCall function(thisArg, ...args) { } // thisArg -- 待绑定this的参数对象。 // args -- 待传入的参数 // 因为call传入参数是挨个传入所以用rest参数方法...args第二步 设置this并调用原函数 Function.prototype.myCall function (thisArg, ...args) {const key Symbol(key);thisArg[key] this; // 步骤aconst res thisArg[key](...args); // 步骤bdelete thisArg[key] // 步骤creturn res }步骤a解释 给传入的thisArg对象添加一个过渡性的属性此处用Symbol因为Symbol具有唯一性不会与thisArg里的属性发生重名覆写的情况。步骤a的this是原函数本例中是func。因为执行func.myCall()时根据谁调用this就指向谁的原则myCall()里的this即指向func。因此步骤a最终是往thisArg中添加了原函数func。 步骤b解释 执行thisArg中刚刚添加的函数func。依旧是谁调用this指向谁的原则func的this就指向的thisArg。 步骤c解释删除掉无意义的过渡性属性。 所以上述测试用例中thisArg – testObjnum1 – 1, num2 – 2结果打印如下 手写实现apply方法 apply方法和call方法区别在于传入参数是个数组。其余实现原理相同。所以实现代码 Function.prototype.myApply function (thisArg, args) {const key Symbol(key);thisArg[key] this; const res thisArg[key](...args); delete thisArg[key] return res }const res func.myApply(testObj, [1, 2]); console.log(res:, res); // 输出this是{ test: 测试用的对象 } //num1 num2 计算结果 3手写实现bind方法 bind方法和call方法不同点在于bind返回的是个函数。所以实现代码如下 Function.prototype.myBind function (thisArg, ...args) {return (...args2) { // 允许调用的时候继续传入参数const key Symbol(key);thisArg[key] this; // 箭头函数中this是定义时的this也就是myBind的thisconst res thisArg[key](...args, ...args2)delete thisArg[key]return res} }const res func.myBind(testObj, 1); console.log(res:, res(2));结果 简而言之bind可以理解为返回一个函数返回的函数中使用call改变了this指向。
http://www.zqtcl.cn/news/756859/

相关文章:

  • 泰安北京网站建设商业网站的后缀一般为
  • 必须网站的访问量wordpress标题大小
  • qq怎么做放资源的网站英语seo什么意思
  • 学生心理健康网站建设论文php开源内容管理系统
  • 机关网站内容建设雄安专业网站建设
  • 有域名有空间怎么做网站怎么制作网站封面
  • 注册域名哪个网站好信息技术制作网站首页
  • 企业网站app制作价格国外外链平台
  • 泉州市网站设计企业网络有限公司经营范围
  • 电子商务网站创业计划书后台管理系统登录
  • 蚂蚁建站网页传奇游戏单职业
  • 标准通网站建设广州 flash 网站
  • 怎么做游戏自动充值的网站淘宝购物平台
  • 免费帮助建站营销策略怎么写
  • 12380 举报网站建设优秀个人网站
  • 简洁网站模板素材用wordpress上传源砖
  • 高密做网站电影html网页模板设计素材
  • 湖北网络营销网站襄阳网站建设-飞鱼网络
  • 想更新公司网站怎么做关于网站开发的自我评价
  • 找建筑工作哪个网站好新增网站 备案
  • 格力网站的建设情况wordpress mysql 密码重置
  • 网站access数据怎么做高端品牌网站建设的目的
  • 外贸买家网站凯里网站建设流程
  • 网站一年要多少钱国外的建筑设计网站
  • 手游发号网站模板ic外贸网站建设
  • 珠海网站制作案例tp5 商城网站开发
  • 母婴用品网站建设规划上海市建设工程 安全协会网站
  • 做室内设计特别好的网站网站服务器租用恒创
  • 慕课网站开发文档wordpress上传到空间
  • 行业垂直网站开发漳州最便宜的网站建设价格