From 8387a3160a8bc93024a2471f6635d092414cf5e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E4=B8=B0=E5=8D=8E?= <3254757072@qq.com> Date: Wed, 12 Oct 2022 23:31:17 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...2\350\257\276 \345\257\271\350\261\241.md" | 112 +++++++++++++ ...350\257\276 JS\345\257\271\350\261\241.md" | 150 ++++++++++++++++++ 2 files changed, 262 insertions(+) create mode 100644 "25-\346\235\250\344\270\260\345\215\216/\344\275\234\344\270\232/10.12\347\254\254\345\233\233\350\212\202\350\257\276 \345\257\271\350\261\241.md" create mode 100644 "25-\346\235\250\344\270\260\345\215\216/\347\254\224\350\256\260/2022-10-12\347\254\254\345\233\233\350\212\202\350\257\276 JS\345\257\271\350\261\241.md" diff --git "a/25-\346\235\250\344\270\260\345\215\216/\344\275\234\344\270\232/10.12\347\254\254\345\233\233\350\212\202\350\257\276 \345\257\271\350\261\241.md" "b/25-\346\235\250\344\270\260\345\215\216/\344\275\234\344\270\232/10.12\347\254\254\345\233\233\350\212\202\350\257\276 \345\257\271\350\261\241.md" new file mode 100644 index 0000000..41c5499 --- /dev/null +++ "b/25-\346\235\250\344\270\260\345\215\216/\344\275\234\344\270\232/10.12\347\254\254\345\233\233\350\212\202\350\257\276 \345\257\271\350\261\241.md" @@ -0,0 +1,112 @@ +```sql + +``` + diff --git "a/25-\346\235\250\344\270\260\345\215\216/\347\254\224\350\256\260/2022-10-12\347\254\254\345\233\233\350\212\202\350\257\276 JS\345\257\271\350\261\241.md" "b/25-\346\235\250\344\270\260\345\215\216/\347\254\224\350\256\260/2022-10-12\347\254\254\345\233\233\350\212\202\350\257\276 JS\345\257\271\350\261\241.md" new file mode 100644 index 0000000..3a8db26 --- /dev/null +++ "b/25-\346\235\250\344\270\260\345\215\216/\347\254\224\350\256\260/2022-10-12\347\254\254\345\233\233\350\212\202\350\257\276 JS\345\257\271\350\261\241.md" @@ -0,0 +1,150 @@ +### 对象 + +#### 一、什么是对象 + +在js中数据大概分为两种数据,基本数据和引用数据。 + +基本数据有:num、string、undefined、null、boolean五大基本数据 + +引用数据有:函数、对象、数组等 + +所以 在js中对象就是一种引用数据,但是数组、函数等也可以称为一种特殊的对象,所以在js中除了五大基础数据,其他几乎都是对象。 + + +#### 二、创造对象的方法 + +##### 直接声明一个对象 + +```sql +var obj={ + + name:"***" + age:"**" + +} +``` + +##### 用new关键字创建一个空对象 + +```sql +var obj=new object +``` + +##### this关键字 + +```sql +var obj={ + + fn:function 函数名(){ + + this.name="***" + + } +} + obj.fn() + console.log(obj) + 打印时就会多一个属性name:"***" +``` + +##### 用new 和 this 创建一个对象 + +```sql + +``` + +##### 构造函数有返回值时,用new关键字创建对象 + +返回值为基础数据时 + +```sql +var obj = { + face:function(){ + this.a="nice" + return true + } + } + var re = new obj.face() + console.log(re) + +``` + +因为布尔类型是基础数据,所以返回布尔类型的时候,用new关键字创建的就是一个对象 + + + +返回值为引用数据时 + +```sql +var obj = { + face:function(){ + this.a="***" + return ["***"] + } + } + var re = new obj.face() + console.log(re) +``` + +因为obj.face返回的就是一个数组,,所以re的值,就是new关键字创建的一个新对象,而因为函数有返回值,且是引用数据数组,所以re的值就是这个数组 + +三、属性管理 + +添加属性 + +```sql +let obj={ + name:"张三", + age:18, +} + obj.sex="男"; +为对象obj添加了一个sex的属性 +``` + +删除属性 + +```sql +let obj={ + name:"张三", + age:18, +} + delete obj.age; +为对象obj删除了一个age的属性 +``` + +查询属性 + +```sql +let obj={ + name:"张三", + age:18, + "phone":123456789 +} + console.log(obj.age) + 查看了对象obj的age属性 + console.log(obj["phone"]) + 当属性名是字符串时需要以中括号的形式查看 +``` + +构造函数 + +```sql + function Person(name,age){ + this.name = name, + this.age = age +//return 123 //返回的值是基本数据类型 会自动忽略 + //return {} //如果返回的是对象,那么覆盖返回的this + //return this + } +var zj1 = new Person('张静',26) +var zp = new Person('周飘',26) + zp.gender = '女' + +``` + -- Gitee