1、参考资料http://www.cnblogs.com/coco1s/p/4833199.html2、归结如下apply 、 call 、bind 三者都是用来改变函数的this对象的指向的;apply 、 call 、bind 三者第一个参数都是this要指向的对象,也就是想指定的上下文;app...
分类:
移动开发 时间:
2015-09-26 11:45:02
阅读次数:
154
js的call apply bind 方法都很常见,目的都是为了改变某个方法的执行环境(context)callcall([thisObj[,arg1[, arg2[, [,.argN]]]]])thisObj可选项。将被用作当前对象的对象。arg1, arg2, argN ..可选项。将被传递方法...
分类:
移动开发 时间:
2015-08-28 07:14:53
阅读次数:
188
在JS中,this的指向是动态变化的,很可能在写程序的过程中,无意中破坏掉this的指向,所以我们需要一种可以把this的含义固定的技术,于是就有了call,apply和bind这三个方法apply:应用某一对象的一个方法,用另一个对象替换当前对象。call:调用一个对象的一个方法,以另一个对象替换...
分类:
移动开发 时间:
2015-08-28 00:33:14
阅读次数:
262
1、方法定义 call方法:? 语法:call([thisObj[,arg1[, arg2[,?? [,.argN]]]]])? 定义:调用一个对象的一个方法,以另一个对象替换当前对象。? 说明:? call 方法可以用来代替另一个对象调用一个方法。call ...
分类:
移动开发 时间:
2015-08-16 09:29:36
阅读次数:
110
call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象。 说明: call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 t...
分类:
移动开发 时间:
2015-06-27 23:58:45
阅读次数:
295
JavaScript里call,apply,bind方法不太容易理解,其实背后的思想并不算非常复杂,希望本文能帮你更好地了解这3个很像,而且看似很神秘的方法。
非要用一个关键字来点明它们的背后思想的精髓的话,关键字就是:this
因为通常程序员对C++比较熟,先借用C++,简单说一下this。
类的成员函数里,都可以用this来访问当前类的成员,但问题是成员函数的参数并没有this这...
分类:
移动开发 时间:
2015-06-20 17:12:23
阅读次数:
154
1. 首先,我们都理解在js中改变this引用有三种方法,call(), apply(), bind();
2. bind方法是改变函数内this引用,简单不再描述;
3. 至于 call() 和 apply() 两个方法,区别在于,前者是不定长的入参,后者是一个数组;下边重点说apply方法使用;
原理:
我们知道js中存在一种类数组对象,比如 {0:1,length:1} ...
分类:
移动开发 时间:
2015-06-04 11:58:51
阅读次数:
140
对于这三个方法,我想一部分人还是比较陌生的。所以今天来个简单的介绍~我们可以将call()和apply()看作是某个对象的方法,通过调用方法的形式来间接调用函数。call()和apply()的第一个实参是要调用函数的母对象,在函数体内通过this来获得他的引用。简单例子:function test(...
分类:
移动开发 时间:
2015-04-29 16:58:56
阅读次数:
162
call(thisObj,arg1,arg2...)、apply(thisObj,[obj1,obj2...])这二个方法是每个函数都包含的非继承的方法call(thisobj[, args])和apply(thisobj[, args])作用都是一样的,简单来说就是改变当前使用该方法的对象中的th...
分类:
移动开发 时间:
2015-04-17 17:13:35
阅读次数:
130
这篇文章主要给大家对比分析了javascript中call,apply,bind三个函数的用法,非常的详细,这里推荐给小伙伴们。关于call,apply,bind这三个函数的用法,是学习javascript这门语言无法越过的知识点。下边我就来好好总结一下它们三者各自的用法,及常见的应用场景。首先看c...
分类:
移动开发 时间:
2015-03-30 20:46:09
阅读次数:
200