浏览 1720 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-02-07
最后修改:2009-02-07
下面来看一下call(): 例:有一个函数: function test(x,y){ this.x=x; this.y=y; } 我们定义了这个函数。同时,这个函数中已经有了call(),这个方法,此时可以调用了: test.call(obj,2,5);//test函数调用call()方法 先解释一下参数: obj:是一个对象 2和5:是函数test的两实参 这段代码代表了一个对象obj调用了test这个函数。它将test函数作为对象obj的一个方法来调用了。把它翻译成java代码或许好理解一些:obj.test(2,5); 可以看到,函数test是作为obj对象的方法被调用了。此时,函数test中的this代表的是obj这个对象。此方法经常用在子类构造方法中,在继承父类时,来调用父类的构造函数。 apply()方法与call()方法类似,只是将函数test的所有的参数放在一个数组中而已。即:apply()方法只有两个参数,一个是obj对象,另一个是数组,这个数组中存放的是test函数的所有实参。例: test.apply(obj,[2,5]);//调用apply()方法,只有两个参数 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |