【笔记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

相关文章
|
12天前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
11天前
|
JavaScript 前端开发 索引
js中DOM的基础方法
【10月更文挑战第31天】这些DOM基础方法是操作网页文档结构和实现交互效果的重要工具,通过它们可以动态地改变页面的内容、样式和行为,为用户提供丰富的交互体验。
|
11天前
|
缓存 JavaScript UED
js中BOM中的方法
【10月更文挑战第31天】
|
11天前
|
JavaScript 前端开发
.js方法参数argument
【10月更文挑战第26天】`arguments` 对象为JavaScript函数提供了一种灵活处理参数的方式,能够满足各种不同的参数传递和处理需求,在实际开发中具有广泛的应用价值。
27 7
|
12天前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
前端开发 JavaScript
如何通过js和jquery获取图片真实的宽度和高度
原文:如何通过js和jquery获取图片真实的宽度和高度 1、什么时候需要获取图片真实的宽度和高度       在做pc网页的时候,有时候会考虑按照插入的图片的尺寸来判断图片是横图还是竖图。然后判断过后给予不同的展示方式!       另外一种就是在手机页面上,在新闻页插入的图片往往都是按照图片...
1093 0
|
6月前
|
JavaScript
jQuery图片延迟加载插件jQuery.lazyload
jQuery图片延迟加载插件jQuery.lazyload
|
1月前
|
JavaScript
jQuery 树型菜单插件(Treeview)
jQuery 树型菜单插件(Treeview)
62 2
|
5月前
|
设计模式 JavaScript 前端开发
必知的技术知识:jQuery插件开发精品教程,让你的jQuery提升一个台阶
必知的技术知识:jQuery插件开发精品教程,让你的jQuery提升一个台阶
62 1
|
1月前
|
JavaScript 前端开发
jQuery Growl 插件(消息提醒)
jQuery Growl 插件(消息提醒)
47 4
jQuery Growl 插件(消息提醒)