首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js this的几种情况

在js中,针对this对象的是一个非常重要又容易混淆的概念,记录一下this对象的几种情况:

一般情况下,对于普通函数而言,this对象相当于window对象,指向window,如下:函数fn中打印的this即为window对象。

当某个函数属于某个对象时,那么这个函数里面的this就相当于这个对象,如下:obj对象包含字符串属性name和函数属性objFn,当通过obj对象调用objFn函数时,此时this打印为obj这个对象。

当通过new一个函数生成的对象时,那么函数里面的this就相当于new创建的这个对象,如下:通过new函数f创建obj2对象之后,this即指向刚创建的obj2.

手动绑定,这种情况稍复杂一点,通过call或者apply可以修改函数里面this的值,如下示例:直接调用aCall函数则跟情况1相同,this指向window,如果通过call和apply函数修改了this,那么此时this都指向对应的obj3对象。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180508A0G3F300?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券