Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2257|回复: 1
打印 上一主题 下一主题

改变作用域的方法 apply call

[复制链接]

388

主题

602

帖子

2218

积分

金牌会员

Rank: 6Rank: 6

积分
2218
跳转到指定楼层
楼主
发表于 2015-9-17 12:36:21 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hechengjin 于 2015-10-20 09:29 编辑

apply
通过传入对象参数改变原函数作用域为参数作用域。
fun.apply(obj, [a,b,c]);
调用fun函数,作用域为obj,参数为a/b/c。
call
同上,不过为不定参数。
new
通过实例化,将构造函数this指针指向实例函数。


bind的作用和apply,call类似都是改变函数的execute context,也就是runtime时this关键字的指向。但是使用方法略有不同。一个函数进行bind后可稍后执行。



http://yalishizhude.github.io/2015/09/16/pieces/?utm_source=tuicool
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-5-15 03:16 , Processed in 0.053469 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表