深入理解JavaScript:对象什么时候创建

🌟 我们在chrome浏览器中debug程序。为了好debug我们会写一些在日常开发中基本不会采用的代码书写方式。

JavaScript中创建对象有3中方式: 1、对象字面量; 2、new; 3、Object.create(对象);

1、使用new创建对象

function F(){this.v1 = 1;this.v2 =2;
}
let f = new F();

🔓 在F构造函数中第一行let v1 = 1前打上断点,在控制台(Console)输入this,显示如下图
在这里插入图片描述

this已经有值了。只是属性v1、v2还没有ti添加到对象中。

📖 结论:使用new调用构造函数创建对象时,对象立即被创建出来,不会等构造函数中的代码执行完成并返回才创建对象。


2、对象字面量

示例程序:

let obj1 = {v1: (function () {return 1;})(),v2: ""
}
let obj2 = {};

为了好debug打断点验证,v1我们采用立即执行函数(IEF)进行初始化。

在立即执行函数的return 1前打上断点。在控制台输入this,显示Window {...}, 也就是说进入字面量对象定义中时,对象并没有创建出来。

📖 结论:使用对象字面量创建对象时,对象并不是被立刻创建出来。

这里的结论有助于理解箭头函数的this值。

⭐️⭐️⭐️⭐️⭐️
如果箭头函数直接作为方法定义在对象中,箭头函数this值并不会绑定到这个对象,而是会绑定到这个对象的外围上下文的this

3、Object.create(对象);

没有想好怎么验证… 。

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

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

相关文章

玩转PyCharm

玩转PyCharm PyCharm是由JetBrains公司开发的提供给Python专业的开发者的一个集成开发环境,它最大的优点是能够大大提升Python开发者的工作效率,为开发者集成了很多用起来非常顺手的功能,包括代码调试、高亮语法、代码跳转、智能提示、自动补…

SWOT分析法:知彼知己的战略规划工具

文章目录 一、什么是SWOT分析法二、SWOT分析法如何产生的三、SWOT分析法适合哪些人四、SWOT分析法的应用场景五、SWOT分析法的优缺点六、SWOT分析实例 一、什么是SWOT分析法 SWOT分析法是一种用于评估组织、项目、个人或任何其他事物的战略规划工具。SWOT是Strengths&#xff…

PotPlayer详细安装教程

安装步骤 进入官网: https://potplayer.tv/ 根据自己电脑的windows系统选择对应的版本安装 选择合适的字体 下载完成 优化设置 刚下好的potplayer仅限于能用,所有设置均为默认状态,我们需要进行优化 首先打开potplayer 右击选择选项 在…

C语言洛谷题目分享(10)最厉害的学生和明明的随机数

目录 1.前言 2.俩则题目 1.最厉害的学生(p5740) 1.题目描述 2.输入格式 3.输出格式 4.输入输出样例 5.题解 2. 明明的随机数 1.题目描述 2.输入格式 3.输出格式 4.输入输出样例 5.题解 3.小结 1.前言 哈喽大家好啊,今天继续为大…

W801学习笔记十三:掌机系统——系统基础组件

我们以一个唐诗学习程序为引子,把掌机的系统架子搭起来。 唐诗学习程序目标: 1、随机选择一首唐诗,随即选择其中的一句进行隐藏。 2、玩家从四个备选句子中选择一个答案。 系统目标: 1、静态数据尽量放在SD中,便于…

Record(记录)与密封类(sealed)

1.Recode记录 (1). 前言 Recode是一种特殊的类,在java1.4时被引入.其出现的原因是我们在编写JavaBean代码时我们会写出很多繁冗的代码(诸如getter/setter方法,重载的构造器,重写的hashCode()等等),为了解决这个问题,…

Linux 基础命令使用创建用户

浏览网站的时候图片,看到一个小练习。创建用户分别位于不同的用户组。 解答下面的题目 2、建立用户使用 useradd,设置密码使用passwd的命令。大概不会使用命令可以借助man来解答。 先建立用户组: groupadd group1 # group1 不存在先建立&…

会声会影滤镜怎么用 会声会影滤镜效果怎么调 会声会影视频制作教程

在进行视频剪辑时,合理地运用滤镜效果可以提升视频的观赏性,使你的作品更加出彩。这篇文章便一起来学习会声会影滤镜怎么用,会声会影滤镜效果怎么调。 一、会声会影滤镜怎么用 使用会声会影的滤镜效果非常简单,以下是具体的操作…

全氟己酮灭火绳的用法早知道:灭火绳多少钱一米?

全氟己酮灭火装置作为一种高效、安全、环保的灭火技术,已经成为了备受青睐的新型灭火选择之一。伴随着市场需求不断增长,在全氟己酮厂家的努力下,各式各样的全氟己酮自动灭火装置不断涌现,包括自动灭火贴、灭火片、灭火毯、灭火绳…

如何打造自己的O2O平台系统:商业模式探索与实践

大家好,我是微三云周丽,今天给大家分析当下市场比较火爆的商业模式! 小编今天跟大伙们分享什么是O2O平台系统? 在数字化浪潮的推动下,O2O(Online to Offline)商业模式已成为连接线上与线下、商家…

c primer plus(2)

前言 延续上一讲的内容,今天来写一写这本书的第三章:处理数据 好吧,本次博客仍然是总结重点内容 简单变量 在本书中变量有三个属性 1信息存储在什么地方 2要存储什么 3存储类型 比如 int braincount; braincount5; 这两行代码体现了…

Java数据类型和变量

一.字面常量 常量即在程序运行期间不变的的量。 字面常量的分类: 1.字符串常量:“内容”,双引号里的内容; 2.整形常量:100,像这样的; 3.浮点数常量:1.23,直接写的浮…

人工智能论文GPT-3(1):2020.5 Language Models are Few-Shot Learners;摘要;引言;scaling-law

摘要 近期的工作表明,在大量文本语料库上进行预训练,然后针对特定任务进行微调,可以在许多NLP任务和基准测试中取得实质性进展。虽然这种方法在架构上通常是与任务无关的,但仍然需要包含数千或数万示例的针对特定任务的微调数据集…

数学专题1 - 素数筛(2)

C素数练习目录 1. 素数基础 1.1 了解什么是素数及其基本性质 素数(质数)是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。换句话说,如果一个数 n n n 只有两个因数:1和 n n n 本身,那么 n n n 就是一个素数。 素数有以下基本性质: 2是最小的素数,也…

通过python实现分析出生日期辨识你的星座 出生日期判断星座

目录 一.总体说明 二.完整代码 三.逐行分析 一.总体说明 这段代码的主要功能是根据用户输入的出生日期,判断并输出对应的星座。 首先,定义了一个名为sdate的列表,其中包含了每个星座所对应的日期。接下来,定义了conts列表,存储了星座的名称,以及signs列表,存储了星座…

我们该如何看待AIGC(人工智能)

目录 AIGC的概述: AIGC的发展经历: AIGC的概述: [TOC]( 🚀文章目录) ---AIGC全称为AI-Generated Content,指基于生成对抗网络GAN、大型预训练模型等人工智能技术,通过已有数据寻找规律,并通过…

数字藏品平台家政平台搭建重点,会用到哪些三方服务?

数字藏品平台搭建重点: 藏品安全性与版权保护:确保数字藏品的安全存储,防止数据丢失或被篡改,同时确保藏品的版权得到合法保护。交易系统的构建:建立一个稳定、透明的交易系统,支持藏品的买卖、竞价等交易…

黑盒优化系列(一):自动化提示词优化【一、绪论】

大语言模型的提示词 随着ChatGPT等大语言模型的问世,我们获取知识的方式从单一的搜索引擎如Google转变为类似ChatGPT这种通过 Q & A 方式提供的方法。 我们尝试对比一下不同提示词,对应的模型输出 ChatGPT无提示词 API: ChatGPT 3.5 …

function calling实现

NLP - LLM - function calling实现 一、function calling介绍二、chatglm3 function calling实现 一、function calling介绍 大型模型如 GPT-4 被设计为能够与外部系统交互,比如通过 API 调用执行某些任务。例如,一个大型模型可能被编程为在需要时调用外…