关于JS中的this指向问题

news/2024/12/23 18:54:05 标签: javascript, 开发语言, ecmascript

全局代码中调用this

全局代码中调用this,this都指向window对象,如果是nodejs 中this指向global

方法内部调用this

在方法内部调用this并不能马上获取this的指向,具体要看当前方法是如何调用的

调用方式调用示例this指向
通过new调用const obj = new Method()this 指向obj
直接调用function obj() { console.log(this) }this指向window
通过对象调用obj.fun = function() {console.log(this)}this指向调用对象 obj
通过callfun.call(this, ...args)用户手动设置
通过applyfun.apply(this, [...args])用户手动设置

调用示例:👇

javascript">const User = function() {
    console.log(this) // 指向 User {}
}
const user = new User()
javascript">function user() {
    console.log(this) // 指向 window
}
user()
javascript">const user = {
    name: '小妹',
    age: 18,
    sayHello: function() {
        console.log(this) // 指向user 
    }
}

user.hello()

javascript">const user = {
    name: '小妹',
    age: 18,
    sayHello: function() {
        console.log(this) // 指向window
    }
}

user.hello.call(this)
user.hello.apply(this)


http://www.niftyadmin.cn/n/5796851.html

相关文章

Liunx下MySQL:表的约束

目录 什么是约束 空属性null/not null 默认值 列描述 zerofill 主键 自增长 什么是约束 约束就是约束ovO。 约束是为了保证数据的合法性,业务逻辑的正确性逼这程序员做约束之内的事情。 假如约束就是10之内的数字,那么程序员想要插入11&#xf…

RocketMQ的集群架构是怎样的?

大家好,我是锋哥。今天分享关于【RocketMQ的集群架构是怎样的?】面试题。希望对大家有帮助; RocketMQ的集群架构是怎样的? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 RocketMQ 是阿里巴巴开源的分布式消息中间件,广泛用于处…

路径规划之启发式算法之二十一:禁忌搜索算法(Tabu Search,TS)

禁忌搜索算法(Tabu Search,TS)是一种元启发式(meta-heuristic)随机搜索算法,由美国科罗拉多大学教授Fred Glover在1986年左右提出。它主要用于解决优化问题,特别是那些具有大规模搜索空间的问题。禁忌搜索算法的核心思想是通过引入一种灵活的“记忆”技术,即禁忌表(Ta…

JVM对象分配内存如何保证线程安全?

大家好,我是锋哥。今天分享关于【JVM对象分配内存如何保证线程安全?】面试题。希望对大家有帮助; JVM对象分配内存如何保证线程安全? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在JVM中,对象的内存分配…

【人工智能】用Python实现情感分析:从简单词典到深度学习方法的演进

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 情感分析是自然语言处理(NLP)中的一个重要任务,其目的是通过分析文本内容,识别出其中的情感极性,如正面、负面或中性。随着技术的不断…

75、适配yolov-face模型到昇腾310p设备上

基本思想:适配yolov11-face模型到昇腾设备上 一、下载源码https://github.com/akanametov/yolo-face 模型yolo使用模型:https://github.com/akanametov/yolo-face/releases/download/v0.0.0/yolov11m-face.pt 测试图片 转模型onnx代码 from ultralyt…

深圳龙岗戴尔dell r730xd服务器故障维修

深圳龙岗一台DELL POWEREDGE R730XD服务器系统故障问题处理: 1:客户工厂年底产线整改,时不时的会意外断电,导致服务器也频繁停机, 2:多次异常停机后导致服务器开机后windows server系统无法正常启动了&…

单点Redis所面临的问题及解决方法

1.数据丢失问题 大家可以设想一下这个场景,假如我们现在只有一个Redis,即单点Redis,我们在往Redis中添加数据的时候突然宕机了,那数据怎么办,如果是一条还好,我在敲一遍就行,那我敲了一万行都没…