new的是函数不是对象,js中要注意(箭头函数的指向)

2024-02-19 21:48

本文主要是介绍new的是函数不是对象,js中要注意(箭头函数的指向),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最重要的就是判断函数是什么时候执行的。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>//箭头函数中的this是在定义函数的时候绑定,而不是在执行函数的时候绑定。意识是箭头函数定义的时候就已经确定了this的//指向了以后就不变了// var a = 11;// var obj = {//     a: 22,//     say: function () {//         console.log(this);//         console.log(this.a)//     }// }// obj.say(); //谁调用就指向谁// var b = 11;// var obj = {//     b: 22,//     // say: () => {//     //     console.log(this);//     //     console.log(this.b);//     // }//     haha: function () {//         console.log(this.b); //又指向了自己  对象的格式就是键值对//     }// }// obj.haha(); //输出的值为11.var c = 11function test1() {this.c = 22; //如果是通过new对象的方式,这个c就是对象的c和外面的c没有关系了//console.log(this);let d = () => {console.log(c);//console.log(this);//console.log(this.c + 'haha');};d();return 'hahahahaha'}var x = new test1(); //输出11,我这里其实new的只是构造方法,里面的this又指向了windows,输出11console.log(x); //它也不接返回值// x.d();// var x = test1(); //输出22// console.log(x);</script>
</head><body></body></html>

在这里插入图片描述
默认指向this和window指向的是同一个地址。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
函数执行this指向才有意义。

执行一个函数,就会有一个this执行(不管这个函数是不是嵌套在里面)

this指向可能相同,也可能不同。

在这里插入图片描述
只要看它是不是独立调用来确定this的指向。

在这里插入图片描述
在这里插入图片描述
判断this指向主要是判断函数是在哪里执行的。

在这里插入图片描述
在这里插入图片描述
父函数是有能力绝对子函数的this指向的。

在这里插入图片描述
在这里插入图片描述
当函数作为参数的时候,我们就可以把函数定义为回调函数。在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
new返回的是实例之后的对象。

实例对象就是构造函数返回的this

new一个函数,生成一个实例化对象,这种函数就叫做构造函数。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
只要是对象就可以通过对象调用,call调用,new调用。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
箭头函数是不允许作为构造函数使用的。

在这里插入图片描述
1:11:39
大佬:https://www.bilibili.com/video/BV1NT4y1j7xH?p=2

这篇关于new的是函数不是对象,js中要注意(箭头函数的指向)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/726073

相关文章

Java对象转换的实现方式汇总

《Java对象转换的实现方式汇总》:本文主要介绍Java对象转换的多种实现方式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java对象转换的多种实现方式1. 手动映射(Manual Mapping)2. Builder模式3. 工具类辅助映

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

Python中判断对象是否为空的方法

《Python中判断对象是否为空的方法》在Python开发中,判断对象是否为“空”是高频操作,但看似简单的需求却暗藏玄机,从None到空容器,从零值到自定义对象的“假值”状态,不同场景下的“空”需要精... 目录一、python中的“空”值体系二、精准判定方法对比三、常见误区解析四、进阶处理技巧五、性能优化

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

Python中的魔术方法__new__详解

《Python中的魔术方法__new__详解》:本文主要介绍Python中的魔术方法__new__的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、核心意义与机制1.1 构造过程原理1.2 与 __init__ 对比二、核心功能解析2.1 核心能力2.2

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

MySQL高级查询之JOIN、子查询、窗口函数实际案例

《MySQL高级查询之JOIN、子查询、窗口函数实际案例》:本文主要介绍MySQL高级查询之JOIN、子查询、窗口函数实际案例的相关资料,JOIN用于多表关联查询,子查询用于数据筛选和过滤,窗口函... 目录前言1. JOIN(连接查询)1.1 内连接(INNER JOIN)1.2 左连接(LEFT JOI