From f76d08534f862212c7a029405c1141154c8a85a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BB=96=E6=9F=8F=E6=88=90?= <2771940338@qq.com> Date: Tue, 25 Oct 2022 23:30:39 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E7=AC=AC=E4=BA=94=E6=AC=A1=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2022-10-24\345\257\271\350\261\241.html" | 65 +++++++++++++++ .../2022-10-24\345\257\271\350\261\241.txt" | 81 +++++++++++++++++++ 2 files changed, 146 insertions(+) create mode 100644 "08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-24\345\257\271\350\261\241.html" create mode 100644 "08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-24\345\257\271\350\261\241.txt" diff --git "a/08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-24\345\257\271\350\261\241.html" "b/08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-24\345\257\271\350\261\241.html" new file mode 100644 index 0000000..75a966b --- /dev/null +++ "b/08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-24\345\257\271\350\261\241.html" @@ -0,0 +1,65 @@ + + + + + + + Document + + + + + + \ No newline at end of file diff --git "a/08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-24\345\257\271\350\261\241.txt" "b/08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-24\345\257\271\350\261\241.txt" new file mode 100644 index 0000000..0da1494 --- /dev/null +++ "b/08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-24\345\257\271\350\261\241.txt" @@ -0,0 +1,81 @@ + 对象(Objects) +万物皆对象: + +类与对象: 类:抽象的 对象:具体的人 (属性和方法) +JavaScript 的设计是一个简单的基于对象的范式。一个对象就是一系列属性的集合, +一个属性包含一个名和一个值。一个属性的值可以是函数,这种情况下属性也被称为*方法*。 + +JavaScript 对象是键值对的容器"。 + +键值对通常写法为 name : value (键与值以冒号分割)。 + +键值对在 JavaScript 对象通常称为 对象属性。 + + 访问对象属性 --person["lastName"]; --person.lastName; + + + 访问对象方法 --objectName.methodName() + +2.构造函数方式 + 1. this{} :new + 2. this赋值 (自己操作) + return this + function Students(name,age){ + this.name = name; + this.age = age; + } + + var zj = new Students('Zoe',16) + + + 3.工厂模式 (设计模式) + function GetValues(name,age) { + var that = { } + that.name = name + that.age = age + return that + } + var that = GetValues('张三',16) + console.log(typeof that); + 4.原型模式 + 5.混合模式 + + + 数组解构 + const arr = [1, 4, 5, 6, 8] + let[a,b,...args] = arr + let [a, , , , b] = arr + console.log(a, b); + + 对象解构 + var obj = { + name: '张三', + age: 16, + skill: { + sname: 'Java', + year: '2022' + } + } + + 取数据 + console.log(obj.skill[1].sname); + + let personName = obj.name, personAge = obj.age; + + 对象解构:取别名 + let{name:personName, age:personAge} = obj + console.log(personName); + console.log(personAge); + + let{name,age,job='学生'} = obj + + let name, age; + ({ name, age } = obj) + + console.log(name, age); + + + 嵌套解构 + let { name: personName, skill: { sname: skillName } } = obj + console.log(personName); + console.log(skillName); -- Gitee From fa56927429dfdb4ead99dd1f2bfbca3444f0d75b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BB=96=E6=9F=8F=E6=88=90?= <2771940338@qq.com> Date: Thu, 27 Oct 2022 11:51:52 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=AC=AC=E5=85=AD=E6=AC=A1=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\345\214\205\350\243\205\347\261\273.html" | 105 ++++++++++++++++++ ...6\345\214\205\350\243\205\347\261\273.txt" | 37 ++++++ 2 files changed, 142 insertions(+) create mode 100644 "08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-26\345\214\205\350\243\205\347\261\273.html" create mode 100644 "08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-26\345\214\205\350\243\205\347\261\273.txt" diff --git "a/08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-26\345\214\205\350\243\205\347\261\273.html" "b/08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-26\345\214\205\350\243\205\347\261\273.html" new file mode 100644 index 0000000..a102a36 --- /dev/null +++ "b/08\345\273\226\346\237\217\346\210\220/\344\275\234\344\270\232/2022-10-26\345\214\205\350\243\205\347\261\273.html" @@ -0,0 +1,105 @@ + + + + + + + Document + + + + + \ No newline at end of file diff --git "a/08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-26\345\214\205\350\243\205\347\261\273.txt" "b/08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-26\345\214\205\350\243\205\347\261\273.txt" new file mode 100644 index 0000000..ae7b8a1 --- /dev/null +++ "b/08\345\273\226\346\237\217\346\210\220/\347\254\224\350\256\260/2022-10-26\345\214\205\350\243\205\347\261\273.txt" @@ -0,0 +1,37 @@ +String Number Boolean + + 针对其基本数据类型的重要性和使用性, + 创建包装类来增强这三者的功能, + 使开发者能够更简单便捷的进行开发 + + 同样的包装类,每一次调用,都会产生不同的对象(对象地址的唯一性) + + + + + +拷贝 +assign:拷贝,浅拷贝(复制的是对象的地址),(手写一个对象的深拷贝)深拷贝(复制的的对象本身) + + assign:浅拷贝 + var obj2 = Object.assign(obj); + + age gender name title + assign:1.浅拷贝一个对象 2.合并对象(target,sources....) + console.log(Object.assign(obj,obj1,obj2,4,false,null,[12,3,34],{name:'张三'})); + console.log(obj[0]); + +包装类 + 原始数据类型: number, boolean, string, null, undefined (symbol,bigint) + var num = new Number(5) //对象 + num.a = 6 + num = num * 2 //会自动变成原始数据类型number + + var bol = new Boolean(); + bol.a = false + + var str = new String('abc'); + str.a = 'hi' + +包装类只有:number,boolean,string, + null,undefined是没有包装类的 -- Gitee