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

新华网海南频道seo公司排名

新华网海南频道,seo公司排名,外贸推广软件哪个好,汉服销售网站建设大家如果想了解改变this指向的方法,大家可以阅读本人的这篇改变this指向的六种方法 大家有没有想过这三种方法是如何改变this指向的?我们可以自己写吗? 答案是:可以自己写的 让我为大家介绍一下吧! 1.call()方法的原理…

大家如果想了解改变this指向的方法,大家可以阅读本人的这篇改变this指向的六种方法
大家有没有想过这三种方法是如何改变this指向的?我们可以自己写吗?
答案是:可以自己写的
让我为大家介绍一下吧!

1.call()方法的原理

	Function.prototype.calls = function (context, ...a) {// 如果没有传或传的值为空对象 context指向windowif (typeof context == null || context == undefined) {context = window;}// 创造唯一的key值  作为我们构造的context内部方法名let fn = Symbol();// this指向context[fn]方法context[fn] = this;return context[fn](...a);}let obj = {func(a,b){console.log(this);console.log(this.age);console.log(a);console.log(b);}}let obj1 = {age:"张三"}obj.func.calls(obj1,1,2);

打印结果:
在这里插入图片描述

2.apply()方法的原理

	// apply与call原理一致  只是第二个参数是传入的数组Function.prototype.myApply = function (context, args) {if (!context || context === null) {context = window;}// 创造唯一的key值  作为我们构造的context内部方法名let fn = Symbol();context[fn] = this;// 执行函数并返回结果return context[fn](...args);};let obj = {func(a, b) {console.log(this);console.log(this.age);console.log(a);console.log(b);}}let obj1 = {age: "张三"}obj.func.myApply(obj1, [1,2]);

打印结果:
在这里插入图片描述

3.bind()方法的原理

	Function.prototype.myBind = function (context) {// 如果没有传或传的值为空对象 context指向windowif (typeof context === "undefined" || context === null) {context = window}let fn = Symbol(context)context[fn] = this //给context添加一个方法 指向this// 处理参数 去除第一个参数this 其它传入fn函数let arg = [...arguments].slice(1) //[...xxx]把类数组变成数组 slice返回一个新数组context[fn](arg) //执行fndelete context[fn] //删除方法}let obj = {func(a) {console.log(this);console.log(this.age);}}let obj1 = {age: "张三"}obj.func.myBind(obj1);

打印结果:
在这里插入图片描述
感谢大家的阅读,如有不对的地方,可以向我提出,感谢大家!

http://www.ds6.com.cn/news/70521.html

相关文章:

  • 网站建设管理规定网络营销人员招聘
  • 企业网站日常维护万网官网入口
  • 有域名怎样做网站seo网站优化方
  • 智能网站建设哪家好百度收录提交申请
  • 石景山网站建设推广电脑培训班一般多少钱
  • 邯郸做外卖网站的公司唯尚广告联盟平台
  • 网站 常见推广外贸订单怎样去寻找
  • 南宁网站建设推荐q479185700顶上网站制作的重要性及步骤详解
  • google移动网站建站十大原则网站优化价格
  • 如果做网站报价网络销售平台有哪些软件
  • 长治建立公司网站的步骤电商网站建设报价
  • 2023新闻热点摘抄青岛seo网络优化公司
  • 网站名称备案网络技术推广服务
  • 阿里云网站怎么备案域名解析北京营销公司排行榜
  • 福州做网站公司有哪些百度提交网址入口
  • 纪检部门网站举报建设郑州网站制作推广公司
  • 网页设计师在什么公司工作淘宝怎样优化关键词
  • 推荐定制型网站建设保定seo排名外包
  • 网站运营推广这么做深圳网络推广团队
  • 在线平面设计工具seo搜索
  • 义乌做网站的电话谷歌海外推广
  • 深圳专业网站设计专业定制近期10大新闻事件
  • 印度人做网站大概需要多少钱
  • pc端和移动端的网站区别是什么意思某网站搜索引擎优化
  • php网站开发和js厦门seo哪家强
  • 好上手的做海报网站十大外贸平台
  • 编程培训机构有哪些快速排名优化怎么样
  • 佛山正规网站建设哪家好培训课程名称大全
  • 南阳网站建设页面客户管理软件
  • 德州网络推广网站seo视频狼雨seo教程