您现在的位置是:首页 > 综合资讯 >正文

jsapply(jsapply)

发布时间:2022-07-20 12:25:07顾晓竹来源:

导读大家好,小龙妹来为大家解答以上问题。jsapply,jsapply很多人还不知道,现在让我们一起来看看吧!1、我们先来看看JS手册中对call的解释:b...

大家好,小龙妹来为大家解答以上问题。jsapply,jsapply很多人还不知道,现在让我们一起来看看吧!

1、我们先来看看JS手册中对call的解释:brbrcall方法br调用一个对象的方法,用另一个对象替换当前对象。

2、Brbrcall ([thissobj [,arg1 [,arg2 [,[,argn]]])brbr参数brthisObjbr是可选的。

3、将用作当前对象的对象。

4、Brbrarg1,arg2,argNbr可选。

5、要传递的方法参数序列。

6、Brbrbrbrcall方法可以brbr用来调用一个方法而不是另一个对象。

7、call方法可以将函数的对象上下文从初始上下文更改为thisObj指定的新对象。

8、Brbr未提供thissobj参数,全局对象被用作thissobj。

9、Brbr说清楚一点,其实就是改变对象的内部指针,也就是改变对象的this所指向的内容。

10、这在面向对象的js编程中有时很有用。

11、brbr引用网上的一段代码,跑完自然明白它的道理。

12、brbrltinputtype=quottextquotid=quot我的文本quot;value=quot输入文本quot;gt;brltscriptgt。

13、brfunctionObj(){ this . value=quot;反对!quot;} brvarvalue=quot全球quot;brfunctionfun 1(){ alert(this . value);}窗口。

14、fun 1();//全局变量brfun 1 . call(window);//全局变量brfun 1 . call(document . getelementbyid(' my text '));//inputtextbrfun 1 . call(new obj());//对象!brlt/scriptgt。

15、brbr call函数和apply方法的第一个参数是要传递到当前对象中的对象,这在函数内部。

16、以下参数都是传递给当前对象的参数。

17、Br运行以下代码:brbrltscriptgt。

18、brvarfunc=new function(){ this . a=quot;funcquot} brvarmyfunc=function(x){ br vara=quot;myfuncquot;布拉勒特(this . a);布拉勒特(x);br}brmyfunc.call(func,quotvarquot);brlt/scriptgt。

19、Brbr可以看到分别弹出了func和var。

20、至此,我们知道了call的每个参数的含义。

21、BrbrApply和call功能相同,但参数不同。

22、Br对于第一个参数的意义相同,但是对于第二个参数:brapply,传入一个参数数组,即多个参数组合成一个数组,call作为call的参数传入(从第二个参数开始)。

23、比如brfunc.call (func1,var1,var2,var3)写成:func.apply (func1,[var1,var2,var 3])brbr同时使用apply的好处是可以直接传入当前函数的arguments对象作为apply的第二个参数。

本文到此结束,希望对大家有所帮助。

标签:

上一篇
下一篇

最新文章