【笔记10】JS的类、继承、Getter和Setter、jQuery的extend方法

简介: 最近要使用 Layui mini 单页版进行后台管理项目的前端页面的开发。完完全全使用 Layui 的模块化开发项目还是比较伤脑筋,所以我决定对 Layui mini 单页版进行自己的封装。封装需要了解 JS 相关的语法和知识点,该篇文章就是对封装过程中 JS 知识点的记录。技术支持:https://www.runoob.com/js

一、前言

最近要使用 Layui mini 单页版进行后台管理项目的前端页面的开发。完完全全使用 Layui 的模块化开发项目还是比较伤脑筋,所以我决定对 Layui mini 单页版进行自己的封装。封装需要了解 JS 相关的语法和知识点,该篇文章就是对封装过程中 JS 知识点的记录。
技术支持:https://www.runoob.com/js

二、JS 的类

// 类是用于创建对象的模板
// 下面代码中的 name 和 age 是 Animal 的属性(JS 属性的
// 写法和 Java 不同)

class Animal {
    constructor(name, age) {
        this.name = name
        this.age = age
    }
}

在这里插入图片描述
创建对象时会自动调用构造函数方法 constructor()

在这里插入图片描述
在这里插入图片描述

class Animal {
    constructor(birthYear) {
        this.birthYear = birthYear
    }

    /**
     * 计算年龄的方法
     */
    calculateAge(year) {
        return new Date().getFullYear() - year
    }
}

三、JS 类继承

与 Java 一样,JS 类继承使用 extends 关键字。
super() 方法用于调用父类的构造函数
在这里插入图片描述
继承可实现代码的复用。

JS 的 Getter 和 Setter

JS 的 Getter 和 Setter 方法通过 get 和 set 关键字进行定义。

class Animal {
    constructor(name, age) {
        this._name = name // 下划线开头表示是对象的内部属性
        this._age = age
    }

    get getAge() {
        return this._age
    }

    set setName(name) {
        this._name = name
    }
}
        let dog = new Animal('FlowerDog', 3)
        
        console.log('dogName: ' + dog.name)
        
        // 设置 dog 对象的属性值
        dog.setName = 'GoodDog'

        console.log('dogName: ' + dog.name)
        
        // 即使 getter 是一个方法,要获取属性值时也不要使用括号
        console.log('dogAge: ' + dog.getAge)

使用 Setter 的方式和设置属性值的方式一样。虽然 Setter 是一个方法,但不需要带括号(JS 的 Setter 方法的使用和 Java 的 Setter 方法的使用不一样。)

在 Setter 方法中,一切的 return 都是无效的。

四、 JS 的 静态方法

静态方法(类方法):使用 static 关键字修饰的方法。它属于类而不属于对象。在实例化对象之前可通过 类名.方法名 调用静态方法。

静态方法不能在对象上调用,只能在类中调用。

五、封装过程的小知识点

在这里插入图片描述

(1) jQuery 的 extend() 方法

作用:可将一个或多个对象的内容合并到目标对象。

注意:
① 若只为 $.extend() 指定了一个参数,则意味着参数 target 被省略。此时,target 就是 jQuery对象本身。通过此方式,可为全局对象 jQuery 添加新的函数。
② 若多个对象具有相同的属性,则后者会覆盖前者的属性值。
在这里插入图片描述

六、解决 IDEA 遇到 java 文件有橘色图案的解决办法

感谢大哥的文章。
https://blog.csdn.net/wztmds/article/details/124435140

相关文章
|
10月前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
11月前
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
212 0
|
6月前
|
JSON JavaScript 数据格式
jqtimeline.js-简单又好用的jquery时间轴插件
jqtimeline.js-简单又好用的jquery时间轴插件
|
10月前
|
JavaScript 前端开发 开发者
js实现继承怎么实现
【10月更文挑战第26天】每种方式都有其优缺点和适用场景,开发者可以根据具体的需求和项目情况选择合适的继承方式来实现代码的复用和扩展。
174 61
|
10月前
|
JavaScript 前端开发
js+jquery实现贪吃蛇经典小游戏
本项目采用HTML、CSS、JavaScript和jQuery技术,无需游戏框架支持。通过下载项目文件至本地,双击index.html即可启动贪吃蛇游戏。游戏界面简洁,支持方向键控制蛇移动,空格键实现游戏暂停与恢复功能。
237 14
|
10月前
|
JavaScript 前端开发
Javascript如何实现继承?
【10月更文挑战第24天】JavaScript 中实现继承的方式有很多种,每种方式都有其优缺点和适用场景。在实际开发中,我们需要根据具体的需求和情况选择合适的继承方式,以实现代码的复用和扩展。
105 11
|
10月前
|
JavaScript 前端开发
如何使用原型链继承实现 JavaScript 继承?
【10月更文挑战第22天】使用原型链继承可以实现JavaScript中的继承关系,但需要注意其共享性、查找效率以及参数传递等问题,根据具体的应用场景合理地选择和使用继承方式,以满足代码的复用性和可维护性要求。
|
11月前
|
JavaScript 前端开发 开发者
jQuery:JavaScript库的瑰宝
jQuery:JavaScript库的瑰宝
251 3
|
11月前
|
XML JavaScript 数据格式
jquery中html()方法的使用
jquery中html()方法的使用
199 1
|
11月前
|
JavaScript 前端开发 API
深入了解jQuery:快速、高效的JavaScript库
【10月更文挑战第11天深入了解jQuery:快速、高效的JavaScript库
126 0