From 98b32443b7bfb7064d6c4010bd6b81aae28716ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?16=20=E9=98=99=E8=8B=8F=E6=96=87?= <2361635242@qq.com>
Date: Wed, 6 Dec 2023 12:27:46 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../20231201js\350\277\233\351\230\2661.md" | 0
.../20231205js\350\277\233\351\230\2662.md" | 301 ++++++++++++++++++
2 files changed, 301 insertions(+)
rename "16 \351\230\231\350\213\217\346\226\207/20231201\350\277\207\346\273\244\345\231\250\344\275\234\344\270\232.md" => "16 \351\230\231\350\213\217\346\226\207/20231201js\350\277\233\351\230\2661.md" (100%)
create mode 100644 "16 \351\230\231\350\213\217\346\226\207/20231205js\350\277\233\351\230\2662.md"
diff --git "a/16 \351\230\231\350\213\217\346\226\207/20231201\350\277\207\346\273\244\345\231\250\344\275\234\344\270\232.md" "b/16 \351\230\231\350\213\217\346\226\207/20231201js\350\277\233\351\230\2661.md"
similarity index 100%
rename from "16 \351\230\231\350\213\217\346\226\207/20231201\350\277\207\346\273\244\345\231\250\344\275\234\344\270\232.md"
rename to "16 \351\230\231\350\213\217\346\226\207/20231201js\350\277\233\351\230\2661.md"
diff --git "a/16 \351\230\231\350\213\217\346\226\207/20231205js\350\277\233\351\230\2662.md" "b/16 \351\230\231\350\213\217\346\226\207/20231205js\350\277\233\351\230\2662.md"
new file mode 100644
index 0000000..0181c92
--- /dev/null
+++ "b/16 \351\230\231\350\213\217\346\226\207/20231205js\350\277\233\351\230\2662.md"
@@ -0,0 +1,301 @@
+# 笔记
+
+### 构造函数
+
+构造函数是专门用于创建对象的函数,如果一个函数使用 `new` 关键字调用,那么这个函数就是构造函数。
+
+```
+
+```
+
+总结:
+
+1. 使用 `new` 关键字调用函数的行为被称为实例化
+2. 实例化构造函数时没有参数时可以省略 `()`
+3. 构造函数的返回值即为新创建的对象
+4. 构造函数内部的 `return` 返回的值无效!
+
+注:实践中为了从视觉上区分构造函数和普通函数,习惯将构造函数的首字母大写。
+
+### 实例成员
+
+通过构造函数创建的对象称为实例对象,实例对象中的属性和方法称为实例成员。
+
+```
+
+```
+
+总结:
+
+1. 构造函数内部 `this` 实际上就是实例对象,为其动态添加的属性和方法即为实例成员
+2. 为构造函数传入参数,动态创建结构相同但值不同的对象
+
+注:构造函数创建的实例对象彼此独立互不影响。
+
+### 静态成员
+
+在 JavaScript 中底层函数本质上也是对象类型,因此允许直接为函数动态添加属性或方法,构造函数的属性和方法被称为静态成员。
+
+```
+
+```
+
+总结:
+
+1. 静态成员指的是添加到构造函数本身的属性和方法
+2. 一般公共特征的属性或方法静态成员设置为静态成员
+3. 静态成员方法中的 `this` 指向构造函数本身
+
+## 内置构造函数
+
+> 掌握各引用类型和包装类型对象属性和方法的使用。
+
+在 JavaScript 中**最主要**的数据类型有 6 种,分别是字符串、数值、布尔、undefined、null 和 对象,常见的对象类型数据包括数组和普通对象。其中字符串、数值、布尔、undefined、null 也被称为简单类型或基础类型,对象也被称为引用类型。
+
+在 JavaScript 内置了一些构造函数,绝大部的数据处理都是基于这些构造函数实现的,JavaScript 基础阶段学习的 `Date` 就是内置的构造函数。
+
+```
+
+```
+
+甚至字符串、数值、布尔、数组、普通对象也都有专门的构造函数,用于创建对应类型的数据。
+
+### Object
+
+`Object` 是内置的构造函数,用于创建普通对象。
+
+```
+
+```
+
+。
+
+总结:
+
+1. 推荐使用字面量方式声明对象,而不是 `Object` 构造函数
+2. `Object.assign` 静态方法创建新的对象
+3. `Object.keys` 静态方法获取对象中所有属性
+4. `Object.values` 表态方法获取对象中所有属性值
+
+ # 作业
+
+```html
+
+```
+
+```html
+
+```
\ No newline at end of file
--
Gitee