学习
实践
活动
专区
工具
TVP
写文章
  • 广告
    关闭

    新年·上云精选

    热卖云产品新年特惠,2核2G轻量应用服务器9元/月起,更多上云必备产品助力您轻松上云

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    apply()、call()、bind()

    apply()、call()、bind() 每个Function对象都存在apply()、call()、bind()方法,其作用都是可以在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖以运行的作用域 使用 apply()、call()、bind()都能改变函数对象的this指向 window.name = "A"; //挂载到window对象的name document.name = "B"; // 对象 rollCall.sayName.apply(document); //B //绑定document对象 rollCall.sayName.apply(s); //C //绑定自定义对象 // call rollCall.sayName.call(); //A //不传参默认绑定window rollCall.sayName.call(window); //A //绑定window对象 rollCall.sayName.call 将参数直接传递,使用逗号分隔 rollCall.sayAllName.call(window,"A","B","C"); // Teacher A B C // bind 仅将对象绑定,并不立即执行

    17920

    call和apply

    首先个人感觉call和apply还是挺神奇的,简简单单就改变了this的作用域,下面我们来共同学习一下 1.call和apply的语法(改变this的作用域,有点像冒充的感觉,例子如下) function.apply People对象, 然后使用了People对象中的属性和方法 people1.paly(); person.paly() </script> //弹出结果: function.call (thisObj[, arg1[, arg2[, [,...argN]]]]); <script type="text/javascript"> 了解: 调用call的对象必须是个函数function call的第一个参数将会是function改变上下文后指向的对象, 第二个参数开始可以接收任意个参数,这些参数将会作为function的参数传入function 调用call的方法会立即执行 function , 通俗说 call传递参数是直接用双引号,然后一个接着一个传递 apply传递参数是通过一个数组的形式传递

    29530

    由.call引起的

    以前看过的源码里,也有用到过.call的时候,今天的一个例子,也碰到了,为了彻底的明白这个的用法,Google了一下,找到了一些比较有用的资料。 其实所有的函数都有.call这个函数,之外还有.apply,.prototype,.length等一系列的,详细的列表在MSDN上有,这里只说.call: 第一个参数是要调用的函数对象,在函数体内就是this 例如函数aaa(arg1,arg2)和对象bbb aaa.call(bbb,arg1,arg2); 等效 bbb.ccc = aaa; bbb.ccc(arg1, arg2); delete bbb.ccc; .call方法实际是产生一个函数的临时调用,调用结束后既进行销毁,这样可以节省资源,也非常灵活。 它还有自己的属性和方法   查到的就这么多 来自vs2005的提示   f.apply(thisValue,argArray);//在thisValue对象上执行 参数由数组argArray提供   f.call

    14740

    关注

    腾讯云开发者公众号
    10元无门槛代金券
    洞察腾讯核心技术
    剖析业界实践案例
    腾讯云开发者公众号二维码

    相关产品

    • 云呼叫中心

      云呼叫中心

      云呼叫中心(CCC)为您提供便捷的互动式呼叫中心管理服务。只需对接 API 接口,您就可以在云端使用传统的呼叫中心能力来实现您的呼叫管理需求。使用 云呼叫中心可以极大降低您的软硬件采购成本,简化客服和营销系统开发工作。

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券