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

安丘做网站的公司旅游网站模块分类

安丘做网站的公司,旅游网站模块分类,如何制作微信小程序答题,学编程的费用一般是多少今天来聊聊bind 关于之前的call跟apply 查看此链接 我们要明确4点内容 1. bind之后返回一个函数 let obj {name : skr } function fn(){console.log(this) } let bindfn fn.bind(obj) console.log(typeof bindfn) // function 2.bind改变this 并且可以传参 bind之后的函数仍… 今天来聊聊bind 关于之前的call跟apply 查看此链接 我们要明确4点内容 1. bind之后返回一个函数 let obj {name : skr } function fn(){console.log(this) } let bindfn fn.bind(obj) console.log(typeof bindfn) // function 2.bind改变this 并且可以传参 bind之后的函数仍旧可以传参 let obj {name : skr } function fn(){console.log(arguments,this) } let bindfn fn.bind(obj,陈,孙,李)bindfn(张三李四) //[Arguments] { 0: 陈, 1: 孙, 2: 李, 3: 张三李四 }{ name: skr }3.bind之后的函数做为构造函数执行this是作为新的一个引用 let obj {name : skr } function fn(name){this.name name console.log(this) //{ name: 坤坤 }console.log(obj) //{ name: skr } } let bindfn fn.bind(obj)let obj2 new bindfn(坤坤) 4 作为构造函数时候 在原型上添加属性 实例能找到这个属性 let obj {name : skr } function fn(name){this.name name console.log(this) //{ name: 坤坤 }console.log(obj) //{ name: skr } } let bindfn fn.bind(obj)let obj2 new bindfn(坤坤) fn.prototype.arrt 小生 console.log(obj2.arrt) // 小生实现一个bind 遵循以上4点 bind之后返回一个函数Function.prototype.bind function(){return function(){// 代码省略} } bind改变this 并且可以传参 bind之后的函数仍旧可以传参Function.prototype.bind function(context){let _this this let args Array.prototype.slice.call(arguments,1) // 保存外部函数的参数return function(){return _this.apply(context,args.concat(Array.from(arguments))) // 链接内部函数参数} } let obj {name :1 } function a(){console.log(this,arguments) } a.bind(obj,1,2,3,4,5,6)(7,8,9) /* 打印结果 { name: 1 } [Arguments] {0: 1,1: 2,2: 3,3: 4,4: 5,5: 6,6: 7,7: 8,8: 9 } */ bind之后的函数做为构造函数执行this是作为新的一个引用Function.prototype.bind function(context){let _this this let args Array.prototype.slice.call(arguments,1) // 保存外部函数的参数let fn2 function(){return _this.apply(this instanceof fn2 ? this:context ,args.concat(Array.from(arguments))) // 看看是否是new 出来的 是new的话就不改变this } return fn2 } let obj {name :1 } function a(name){this.name name console.log(this) } let bindfn a.bind(obj) let obj2 new bindfn(2) // {name:2} console.log(obj) // {name:1}作为构造函数时候 在原型上添加属性 实例能找到这个属性Function.prototype.bind function(context){let _this this let args Array.prototype.slice.call(arguments,1) // 保存外部函数的参数function ConS(){}let fn2 function(){return _this.apply(this instanceof fn2 ? this:context ,args.concat(Array.from(arguments))) // 看看是否是new 出来的 是new的话就不改变this } console.log(this)ConS.prototype this.prototype // 通过第三方 new ConS().__proto__ this.prototype fn2.prototype new ConS() // new fn2().__proto__ new ConS() --- new fn2().__proto__.__proto__ this.prototype 从而拿到this实例上的原型属性和方法return fn2 } let obj {name :1 } function a(name){this.name name console.log(this) } let bindfn a.bind(obj) let obj2 new bindfn(2) // {name:2} console.log(obj2) // {name:1}大致上就是这样了
http://www.zqtcl.cn/news/878830/

相关文章:

  • 网站开发方面的文献自己怎么建个免费网站吗
  • 建设网站前的市场分析百度竞价推广是什么
  • 专门做照片书的网站阳谷聊城网站优化
  • 国际贸易相关网站网站建设的目标与思路
  • 小型网站建设费用云南网站建设企业推荐
  • 设备租赁业务网站如何做看板娘 wordpress
  • 上海网站设计工作室二手交易网站建设目标
  • 深圳智能响应网站建设平面设计基础教程
  • 网站建设 推广全流程案例分析网站
  • 企业建网站多少钱怎样做网站挣钱
  • 经营性质的网站asp.ne做网站
  • 天津都有哪些制作网站开网站挣不挣钱
  • 网站建设云技术公司推荐重庆网页设计培训
  • 做房产网站不备案可以吗北京爱空间装修公司
  • 手机网站是用什么开发的厦门公司网站制作流程
  • 网站是广西住房和城乡建设厅wordpress插件数据库存在哪
  • 网站图片如何做链接网站制作及管理教程
  • 企业建立企业网站有哪些优势?app下载排行榜
  • 广州天河网站建设gif在线制作
  • 建个大型网站要多少钱小程序开发公司简介
  • 定制建设网站商洛做网站的公司
  • 网站建设目标活动策划书模板
  • 手机网站空间申请做网站需要空间跟域名吗
  • 洛阳专业网站设计开发制作建站公司长沙网站制作app开发公司
  • 王也个人资料网页网络优化
  • 公司网站制作工作室如何重装一下wordpress
  • 域名服务商网站建一个网站多少钱
  • 北京哪家制作网站好淄博优化推广
  • 许昌网站建设科技公司公司查询网站查询系统
  • 老网站权重低的原因网站建设公司使用图片侵权使用者有无责任