首页 > 其他分享 >js中this指向问题

js中this指向问题

时间:2024-04-14 11:46:11浏览次数:21  
标签:调用 指向 ctx js 问题 call apply 全局 method

this是什么?

在不同的场景,this 指代的含义不同:

  • 在全局代码中使用this,指代全局对象(window)

在真实的开发中,很少在全局代码使用this

  • 在函数中使用this,它的指向完全取决于函数是如何被调用的

    调用方式 示例 函数中的this指向
    通过new调用 new method() 新对象
    直接调用 method() 全局对象
    通过对象调用 obj.method() 前面的对象
    call method.call(ctx) call的第一个参数ctx
    apply method.apply(ctx) apply的第一个参数ctx

标签:调用,指向,ctx,js,问题,call,apply,全局,method
From: https://www.cnblogs.com/ccblblog/p/18133917

相关文章

  • IDEA中Maven项目修改JSP后通过配置Tomcat实现立即生效
    参考:IDEA中Facets和Artifacts配置说明idea中artifacts、facets、modulesIntelliJIDEA部署Web项目,终于搞懂了传统SpringMvc项目目录和对应tomcat配置如下:在日常开发过程中,我们修改完java代码后,接着就点击Build编译,然后就可以去验证代码了(前提是On'Update'Action选......
  • 本地升级idea后,不能向github上提交代码问题处理
    问题现象:本人自己电脑之前一直使用idea2018.1商业破解版,之前有简历本地代码仓库,并在github上建立了关联的远程代码仓库。最近本人在本地升级一下idea,从idea2018.1商业版升级到2023.1.5社区版本(idea支持win7的版本基本就到2023.1这个版本了,目前本人尝试安装了2023.1.5和2023.1.3......
  • JS-事件绑定
    方式一:通过HTML标签中的事件属性进行绑定<inputtype="button"onclick="on()"value="按钮1"><script>functionon(){alert("我被点击了!");}</script>方式二:通过DOM元素......
  • mathjs 库支持精确的小数计算吗
    是的,Math.js库确实支持精确的小数计算。Math.js是一个开源的JavaScript数学库,专为处理各种数学任务而设计,包括但不限于精确的小数运算。它提供了丰富的数学函数和常数,并且特别关注数值计算的准确性和可靠性,特别是在处理浮点数时。浮点数在JavaScript中通常会导致精度损失问题......
  • 30 天精通 RxJS (17):Observable Operators - switch, mergeAll, concatAll
    今天我们要讲三个operators,这三个operators都是用来处理HigherOrderObservable。所谓的HigherOrderObservable就是指一个Observable送出的元素还是一个Observable,就像是二维数组一样,一个数组中的每个元素都是数组。如果用泛型来表达就像是Observable<Observab......
  • 【Nano Framework ESP32 篇】刷入 nanoCLR 固件以及相关问题
    老周在几个世纪前曾写过树莓派相关的iOT水文,之所以没写NanoFramework相关的内容,是因为那时候这货还不成熟,可玩性不高。不过,这货现在已经相对完善,老周都把它用在项目上了——第一个是自制的智能插座,这个某宝上50多块可以买到,搜“esp32插座”就能找到。一种是86型盒子的,带屏......
  • 从Google网页中通过正则表达式获取json如何转换unicode对象
    场景:Google爬虫,获取下拉框搜索关键词,需要获取页面的里面的json字符串如下面:'{\\x22aa\\x22:{},\\x22abd\\x22:{\\x22abd\\x22:false,\\x22deb\\x22:false,\\x22det\\x22:false},\\x22async\\x22:{},\\x22attn\\x22:{},\\x22bgd\\x22:{\\x22ac\\x22:true,\\x......
  • Android 11 导航栏添加一个虚拟按钮--问题合集
    导航栏添加一个虚拟按钮按钮功能:显示隐藏导航栏1.frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.javaprotectedStringgetDefaultLayout(){finalintdefaultResource=QuickStepContract.isGesturalMode(mN......
  • [Java SE] 经典问题:超出Java Long型(8字节/64位)的二进制比特流数据如何进行大数的数
    0问题描述经典问题:超出JavaLong型(8字节/64位)的二进制比特流数据如何进行大数的数值计算?近期工作上遇到了这个问题:需要将一个无符号数、且位长>=8字节(等于8字节时,首位bit为1,其他bit不全为0)的二进制字符串转为Java****对象(原始整数),进行整型运算、或浮点数运算浮点运算......
  • 规范化开发即可避免的问题
    1.所有实体类上加@Data注解 @Data等效于@Getter@Setter@RequiredArgsConstructor @ToString@EqualsAndHashCode。如果你不想在打印日志的时候看到对象地址,请使用@Data ......