JavaScript中普通函数箭头函数容易混淆的this指向

[[toc]]

普通函数this指向什么?

普通函数的this指向哪里?

  • this指向调用它的对象
  • 函数定义无法确定,只有函数执行时才能确定

普通函数有哪些?

  • 没有调用者的函数
  • 对象内函数
  • 使用apply
// 没有调用者的函数: this(非严格)指向全局window
function test(){console.log('this=',this) // this=window
}
test()
// 对象内函数: 只有1层,this指向调用者对象
const school = {  name: 'abc',course(){console.log('this=',this) // this= schoolconsole.log('name=',this.name) // name=abc}
}
school.course()
// 对象内函数: 有多层对象,this指向最近调用者对象
const outer = {  name: 'outer',inner:{name: 'inner',fn(){console.log('this=',this) // this= innerconsole.log('name=',this.name) // name=inner}}
}
outer.inner.fn()
// 使用apply: 方法fun内部的this为apply参数1,如果参数1为null,则默认全局对象
const obj1 = {name: '对象1'}
function fn(a){console.log</

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/135885.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

常见的深度相机厂商

文章目录 OAK奥比中光图漾科技 OAK 官网地址&#xff1a;https://www.oakchina.cn/ OAK相机是3D视觉人工智能开发套件&#xff0c;它内置了深度相机&#xff08;双目/结构光/ TOF&#xff09;、4T算力2.5W功耗的AI处理芯片、IMU惯性导航芯片于一体。支持实时120FPS深度图像输…

【面经】讲一下spring aop

Spring AOP&#xff08;面向切面编程&#xff09;是一种编程思想&#xff0c;允许开发者在程序运行期间动态地切入代码&#xff0c;实现功能增强、日志记录、事务处理等功能。 在Spring AOP中&#xff0c;切面&#xff08;Aspect&#xff09;是指切入代码的通用逻辑&#xff0…

Vue+OpenLayers 创建地图并显示鼠标所在经纬度

1、效果 2、创建地图 本文用的是高德地图 页面 <div class"map" id"map"></div><div id"mouse-position" class"position_coordinate"></div>初始化地图 var gaodeLayer new TileLayer({title: "高德地…

Perl语言用多线程爬取商品信息并做可视化处理

首先&#xff0c;我们需要使用Perl的LWP::UserAgent模块来发送HTTP请求。然后&#xff0c;我们可以使用HTML::TreeBuilder模块来解析HTML文档。在这个例子中&#xff0c;我们将使用BeautifulSoup模块来解析HTML文档。 #!/usr/bin/perl use strict; use warnings; use LWP::User…

【database】审计/记录mysql、postgres、sqlserver、oracle数据库的ddl事件和语句

一、mysql 很遗憾&#xff0c;mysql不支持database级别的trigger。无法使用触发器记录ddl。 如果需要获取dll记录可以使用debezium/cdc在mysql的binlog中解析。 二、postgres 创建trigger 能记录&#xff1a; create tabledrop tablealter table add/drop/rename/修改类型…

C# PictureBox——SizeMode属性

Normal ——标准模式, 在此模式下, 图片位于PictureBox的左上角, 图片的大小由PictureBox控件的大小决定, 当图片的大小大于PictureBox的尺寸时, 多余的图像将被剪切掉StretchImage——PictureBox会根据自身的长宽比例. 来调整图片的长宽比例, 使图片在PictureBox中完整显示出来…

基于Fuzzing和ChatGPT结合的AI自动化测试实践分享

一、前言 有赞目前&#xff0c;结合insight接口自动化平台、horizons用例管理平台、引流回放平台、页面比对工具、数据工厂等&#xff0c;在研发全流程中&#xff0c;已经沉淀了对应的质量保障的实践经验&#xff0c;并在逐渐的进化中。 在AI能力大幅进步的背景下&#xff0c…

Maven 从入门到精通

目录 一. 前言 二. Maven 下载与安装 2.1. 下载 2.2. 安装 三. Maven 核心概念 3.1. POM 3.2. 约定的目录结构 3.3. 坐标 3.4. 依赖管理 3.4.1. 直接依赖和间接依赖 3.4.2. 依赖的排除 3.4.3. 统一的版本管理 3.4.4. 依赖范围 3.5. 仓库 3.6. 生命周期/插件/目标…

vue3怎么获取el-form的元素节点

在元素中使用ref设置名称 在ts中通过从element-plus引入formInstance,设置formRef同名名称字段来获取el-form节点

HackTheBox-Starting Point--Tier 1---Funnel

文章目录 一 题目二 实验过程三 利用SSH隧道3.1 本地端口转发 一 题目 Tags FTP、PostgreSQL、Reconnaissance、Tunneling、Password Spraying、Port Forwarding、Anonymous/Guest Access、Clear Text Credentials译文&#xff1a;FTP、PostgreSQL、侦察、隧道技术、密码喷洒…

WordPress相关文章推荐

首先 WordPress 本身并没有相关文章的推荐功能&#xff0c;网站之所以需要这样的功能出于两个原因&#xff0c;一方面是推荐相关的内容越优质&#xff0c;访客的留存和继续阅读将会增强&#xff0c;同样从优化角度来说会更加有利于搜索引擎抓取时对页面质量的提升&#xff0c;毕…

AD9371 官方例程 NO-OS 主函数 headless 梳理(一)

AD9371 系列快速入口 AD9371ZCU102 移植到 ZCU106 &#xff1a; AD9371 官方例程构建及单音信号收发 ad9371_tx_jesd -->util_ad9371_xcvr接口映射&#xff1a; AD9371 官方例程之 tx_jesd 与 xcvr接口映射 AD9371 官方例程 时钟间的关系与生成 &#xff1a; AD9371 官方…

RPA处理重复工作,助力高效资金管理

在瞬息万变的市场竞争中&#xff0c;众多企业开展多元化经营以获取最大的经济效益。然而&#xff0c;企业的多元化经营程度越高&#xff0c;协调活动可能造成的决策延误也越多&#xff0c;其资金管理往往将面临更大的考验。随着新技术的发展&#xff0c;更多具备多元产业的企业…

【蓝桥杯选拔赛真题15】C++三个数排序 第十二届青少年组蓝桥杯C++选拔赛真题解析

目录 C/C++排序 一、题目要求 1、编程实现 2、输入输出 二、算法分析

【Redis】Redis与SSM整合Redis注解式缓存Redis解决缓存问题

一&#xff0c;Redis与ssm整合 1.1 pom.xml配置 在pom.xml中配置相关的redis文件 redis文件&#xff1a; <redis.version>2.9.0</redis.version> <redis.spring.version>1.7.1.RELEASE</redis.spring.version><dependency><groupId>red…

DAIR-V2X-V 3D检测数据集 转为Kitti格式 | 可视化

本文分享在DAIR-V2X-V数据集中&#xff0c;将标签转为Kitti格式&#xff0c;并可视化3D检测效果。 一、将标签转为Kitti格式 DAIR-V2X包括不同类型的数据集&#xff1a; DAIR-V2X-IDAIR-V2X-VDAIR-V2X-CV2X-Seq-SPDV2X-Seq-TFDDAIR-V2X-C-Example: google_drive_linkV2X-Seq-…

K8s之CRD

一、CRD概述 Kubernetes中将一切都视为资源&#xff0c;资源是Kubernetes API中的一个Endpoint&#xff0c;存储了某种类型的API对象&#xff0c;例如Pod、Deployment、Configmap、Volume等都是一种资源&#xff0c;不过这些都属于内置资源&#xff0c;是Kubernetes默认提供的…

SpringBoot Kafka生产者 多kafka配置

一、配置文件 xxxxxx:kafka:bootstrap-servers: xx.xx.xx.xx:9092,xx.xx.xx.xx:9092producer: # 设置大于0的值&#xff0c;则客户端会将发送失败的记录重新发送retries: 3 #当有多个消息需要被发送到同一个分区时&#xff0c;生产者会把它们放在同一个批次里。该参数指定了一…

如何成为优秀的产品经理?新人必看!

从一名普通产品经理到一名优秀的产品经理要经历多少步&#xff1f;哪些能力是稀缺的能力&#xff1f;哪些能力又是公司急需的能力&#xff1f;善于推动项目研发重要&#xff0c;还是搞定业务更重要&#xff1f; 这些关于优秀产品经理的能力&#xff0c;本文将全面讨论&#xf…

10-27 maven概念

maven maven的概念模型: 项目对象模型(POM: Project object Model)&#xff0c;一组标准集合: pom.xml 依赖管理系统(Dependency Management System) 项目生命周期(Project Lifecycle) 项目对象模型&#xff1a; 把项目当成一个对象&#xff0c;描述这个项目&#xff0c;使用p…