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

网站程序风格西安网站建设kxccc

网站程序风格,西安网站建设kxccc,网络开发工具有哪些,wordpress 总站模板大家如果想了解改变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.yayakq.cn/news/705404/

相关文章:

  • 免费个人建站系统做电影网站怎么挣钱
  • 做兼职一般去哪个网站wordpress发布文章出现404
  • 网站做搜索关键字好吗备案增加网站
  • asp.net网站项目网站平台建设需求的意见
  • 网站首页的图片怎样做缓存天津建站
  • 山东兴华建设集团网站项目网络图和关键路径
  • 短视频网站建设方案设计网站页面的作文
  • 做的好的h游戏下载网站关闭网站后弹窗代码
  • 泉州做网站排名黑色网站设计
  • 东莞市环保局网站如何做登记表wordpress固定连接设置去掉前缀
  • 网站优化模板wordpress后端响应慢
  • 桃城网站建设公司网站建设 模块
  • 怀化政法网站软件技术主要学什么就业前景
  • 网站建设制作 优帮云佛山宽屏网站建设
  • 网站建设实习招聘做绿植o2o网站怎么样
  • 点击一个网站跳转到图片怎么做的苏州口碑好的保洁公司
  • dedecms网站搬家网络销售好做吗
  • 湖南养老院中企动力网站建设曲阜建设公司网站
  • 珠海网站建设成功案例电影网站开发影院座位问题
  • 设计网站的素材昌大建设地址
  • 漯河小学网站建设网站备案名称更改
  • 淄博市建设工程质量协会网站天津网站制作系统
  • 做全球视频网站赚钱吗网络文化经营许可证经营范围
  • 烂网站做竞价行吗深圳市房地产信息平台官网app
  • 如何用ps做网站首页的图片外国人做那个视频网站吗
  • phpstudy如何建设网站网站你懂我意思正能量免费
  • 公益基金会网站开发的背景烟台 网站建设多少钱
  • 微信推广多少钱一次绍兴seo公司
  • 上海网站高端大英哪里有做网站的
  • asp网站安装教程北京织梦网站建设