




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
Javascript的this用法简述 Javascript中的this关键字要怎么用,它的用法有哪些?下面YJBYS小编为大家介绍如下! this是Javascript语言的一个关键字。 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。比如, functiontest(){ this.x=1; } 随着函数使用场合的不同,this的值会发生变化。但是有一个总的原则,那就是this指的是,调用函数的那个对象。 下面分四种情况,详细讨论this的用法。 情况一:纯粹的函数调用 这是函数的最通常用法,属于全局性调用,因此this就代表全局对象Global。 请看下面这段代码,它的运行结果是1。 functiontest(){ this.x=1; alert(this.x); } test();//1 为了证明this就是全局对象,我对代码做一些改变: varx=1; functiontest(){ alert(this.x); } test();//1 运行结果还是1。再变一下: varx=1; functiontest(){ this.x=0; } test(); alert(x);//0 情况二:作为对象方法的调用 函数还可以作为某个对象的方法调用,这时this就指这个上级对象。 functiontest(){ alert(this.x); } varo={}; o.x=1; o.m=test; o.m();//1 情况三作为构造函数调用 所谓构造函数,就是通过这个函数生成一个新对象(object)。这时,this就指这个新对象。 functiontest(){ this.x=1; } varo=newtest(); alert(o.x);//1 运行结果为1。为了表明这时this不是全局对象,我对代码做一些改变: varx=2; functiontest(){ this.x=1; } varo=newtest(); alert(x);//2 运行结果为2,表明全局变量x的值根本没变。 情况四apply调用 apply()是函数对象的一个方法,它的作用是改变函数的调用对象,它的第一个参数就表示改变后的调用这个函数的对象。因此,this指的就是这第一个参数。 varx=0; functiontest(){ alert(this.x); } varo={}; o.x=1; o.m=test; o.m.apply();//0 apply()的参数为空时,默认调用全局对象。因此,这时的运行结果为0,证明this指的是全局对象。 如果把最后一行代码修改为: o.m.apply(o);//1 运行结果就变成了1,证明了这时this代表的是对象o。

元枫****文章
实名认证
内容提供者


最近下载
一种基于双轨缆道的牵引式雷达波在线测流系统.pdf
一种基于双轨缆道的牵引式雷达波在线测流系统.pdf
一种胃肠道超声检查助显剂及其制备方法.pdf
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf