Day16 javascript 创建对象

通过 JavaScript,咱们能够定义并创建自己的物件,创建新物件有两种不同的方法:
1.使用 Object 定义并创建物件。
2.使用函数来定义物件,然後创建新的物件。
在 JavaScript 中,几乎所有的物件都是 Object 的类型,它们都会从 Object.prototype 继承属性和方法,Object 构造函数,会根据给定的参数创建物件,具体有以下情况:
1.如果给定值是 null 或 undefined,会创建并返回一个空物件。
2.如果传进去的是一个基本类型的值,会构造其包装类型的物件。
3.如果传进去的是参考类型的值,仍然会返回这个值,经他们复制的变数保有和原物件相同的引用位址。
4.以非构造函数形式被调用时,Object会等同於 new Object()。
是不是觉得很难懂(我觉得超难懂的拉!!!),下面我举几个例子应该会对各位有点帮助(应该吧?),先看看语法格式:
new Object([value]),其中value 可以是任何值,咱们也可以使用另一种方式来创建物件,语法格式如下:
{name1:value1,name2:value2,......nameN:vlaueN},其实就是大括弧里面创建一对又一对 name:value ,然後每一对 name:value 之间以逗号(,)隔开,简单来说JavaScript 物件就是一个 name:value 集合。
https://ithelp.ithome.com.tw/upload/images/20210916/201402503s3Luog2vL.pnghttps://ithelp.ithome.com.tw/upload/images/20210916/20140250fJmdmGyCYa.png
至於用函数来构造物件,我突然想不到该怎麽描述,还是直接举例吧~:
https://ithelp.ithome.com.tw/upload/images/20210916/20140250Lqm9bBYHmU.pnghttps://ithelp.ithome.com.tw/upload/images/20210916/20140250Z6mQ8xpHlO.png
P.S.在JavaScript中,this通常指向的是我们正在执行的函数本身,或者是指向该函数所属的物件(运行时)。

如何把属性添加到 JavaScript 物件呢?我们可以通过为物件赋值,向已有物件添加新属性:
https://ithelp.ithome.com.tw/upload/images/20210916/20140250pnULQukktW.pnghttps://ithelp.ithome.com.tw/upload/images/20210916/20140250Ax3XvSNknh.png
可以添加属性的话,当人也可以把方法添加到 JavaScript 物件上罗,接下来是在函数内部定义物件的方法:
https://ithelp.ithome.com.tw/upload/images/20210916/20140250TW0B9L1q8C.pnghttps://ithelp.ithome.com.tw/upload/images/20210916/20140250Mb9c9z5PKl.png
最後稍微提一下JavaScript 的对象是可变的,物件也是可变的,它们是通过引用来传递的,例如:
https://ithelp.ithome.com.tw/upload/images/20210916/20140250ptT2HvKwLd.pnghttps://ithelp.ithome.com.tw/upload/images/20210916/201402508If6bN6LuJ.png

以上就是今天的笔记,怎麽觉得打了好长....


<<:  [Day1] 话说没钱有没钱的作法

>>:  [Day-16] R语言 - 分群应用(一) GMM数值补值-上 ( Fill.NA with GMM in R.Studio )

Day10:例外处理,留下来或我跟你走

程序在执行的时候,有些时候我们会遇到一些例外的情况,我们一般会使用 try-catch 来拦截程序执...

Day 19 Method

Method程序设计中,可以说是将程序模组化,这样有助於加速程序的开发、便於分析与维护等,如果要重复...

[Day4]在Rock pi4 上安装Armbian

下载安装包 Armbian Buster 和 Focal之後的作业系统基於完全不同的作业系统,两者所...

[JS] You Don't Know JavaScript [this & Object Prototypes] - Object [番外 - getter/setter]

前言 我们在Object [下]中有提到 getter / setter,由於这个部分在书中的解释是...

[DAY3] PHP语法小练习

废言 昨天我们讲了环境架设了,那今天我们来讲一下PHP的一些基本语法吧! 一开始的Hello,Wor...