码迷,mamicode.com
首页 > 移动开发 > 详细

JS-call()和apply()

时间:2017-04-05 13:08:44      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:span   不同   ref   对象   括号   应用   一句话   执行环境   概念   

1、定义

call():

定义:调用一个对象的一个方法,以另一个对象替换当前对象。 

语法:call(Obj,arg1,arg2...)

apply():

定义:应用某一对象的一个方法,用另一个对象替换当前对象。 

语法:apply(Obj,[arg1,arg2...])

call和apply可以用来重新定义函数的执行环境,也就是this的指向; call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的。

换句话说,就是为了改变函数体内部 this 的指向。

因为 JavaScript 的函数存在「定义时上下文」和「运行时上下文」以及「上下文是可以改变的」这样的概念。

2、不同之处

apply和call功能一样,只是传入的参数列表形式不同。

3、作用

总结一句话:call() 和apply() 都是用来让括号里的对象来包含括号外的函数的属性。

 

JS-call()和apply()

标签:span   不同   ref   对象   括号   应用   一句话   执行环境   概念   

原文地址:http://www.cnblogs.com/fydxx/p/6657031.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!