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

相关文章

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

postgresql使用UUID函数的方法

《postgresql使用UUID函数的方法》本文给大家介绍postgresql使用UUID函数的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录PostgreSQL有两种生成uuid的方法。可以先通过sql查看是否已安装扩展函数,和可以安装的扩展函数

MySQL字符串常用函数详解

《MySQL字符串常用函数详解》本文给大家介绍MySQL字符串常用函数,本文结合实例代码给大家介绍的非常详细,对大家学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql字符串常用函数一、获取二、大小写转换三、拼接四、截取五、比较、反转、替换六、去空白、填充MySQL字符串常用函数一、

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化