class的get和set

news/2024/7/10 23:49:34 标签: es6

class的get和set

  • 一、使用场景
  • 二、代码实现

一、使用场景

当我们需要在用户获取或设置实例某个属性的时候做一些附加的操作的时候,就能利用这个特性。

二、代码实现

  class Person {
    #name = ''
    #age = 0 // 设置私有属性存储值,避免被外部修改
    constructor(name, age) {
      this.#name = name
      this.#age = age
    }
    get age() {
      return this.#age
    }
    set age(val) {
      if (this.checkAge(val)) { // 设置前校验格式
        this.#age = val
      } else {
        console.warn('年龄不符合要求')
      }
    }
    checkAge(val) {
      return typeof val === 'number' && !(val < 0 || val > 150);
    }
  }
  const tom = new Person('tom', 12)
  tom.age = 45
  tom.age = 151
  console.log(tom.age)

在这里插入图片描述


http://www.niftyadmin.cn/n/5096115.html

相关文章

Oracle Java收费与免费版本

Java作为一种高效性和跨平台性极强的编程语言&#xff0c;在业界广受好评。在使用Java进行开发的过程中&#xff0c;用户最关心的问题之一便是其收费相关的情况。 Java的收费主要分为免费版本和付费版本两种。以下是Java不同版本的详细信息&#xff1a; 一、免费版本 Java的…

JVM字节码指令详解

文章目录 前言一、JVM字节码指令概述1. 什么是JVM字节码指令&#xff1a;2. 字节码指令的作用&#xff1a;3. 字节码指令的分类&#xff1a; 二、字节码指令的种类1. 加载和存储指令2. 算术指令3. 类型转换指令4. 对象和数组操作指令5. 操作数栈管理指令6. 控制转移指令7. 方法…

又要报销了,还在手动下载整理发票吗?

大多数公司都是每个月定期提交报销&#xff0c;一般报销用的发票都是电子发票发到邮箱&#xff0c;每次要报销时都需要登录邮箱&#xff0c;点开邮件&#xff0c;一个个下载整理&#xff0c;工作量不大&#xff0c;但是发票多了也着实很烦。这个月终于下决心把这个过程自动化一…

百题千解计划【CSDN每日一练】LLM大语言模型:必练选择题及解析 | “等差数列”多解法:Python、Java、C语言、C++...

月落乌啼霜满天,江枫渔火对愁眠。 🎯作者主页: 追光者♂🔥 🌸个人简介: 💖[1] 计算机专业硕士研究生💖 🌟[2] 2022年度博客之星人工智能领域TOP4🌟 🏅[3] 阿里云社区特邀专家博主🏅 🏆[4] CSDN-人工智能领域优质创作者🏆 📝[5] …

哪个牌子的电容笔好用?ipad触控笔推荐平价

有哪些电容笔适合学生党入手&#xff1f;苹果Pencil虽然与普通的电容笔&#xff0c;不同的是&#xff0c;这款电容笔同时具有重力传感器和倾斜传感器&#xff0c;而平替电容笔&#xff0c;只有一种倾斜传感器&#xff0c;但在书写方面的体验很不错&#xff0c;可以用来写字&…

软件开发项目文档系列之三如何撰写项目招标文件

前言 招标文件在采购过程中扮演着至关重要的角色&#xff0c;其主要目的是提供清晰而详尽的信息&#xff0c;以确保采购项目的需求得以明确&#xff0c;潜在的投标单位能够清晰理解并遵守相关要求&#xff0c;并最终为采购方提供一个有力的依据来评估和选择最合适的承建单位。…

视频怎么压缩?视频太大这样处理变小

在当今时代&#xff0c;视频已经成为了我们日常生活中不可或缺的一部分&#xff0c;然而&#xff0c;视频文件往往非常大&#xff0c;给我们的存储和传输带来了很大的不便&#xff0c;那么&#xff0c;如何有效地压缩视频呢&#xff1f; 一、使用压缩软件 首先我们给大家分享一…

navicat备份sqlserver数据库

打开navicat软件&#xff0c;连接sqlserver2012数据库 链接sqlserver2012 填写下面的信息 连接名&#xff1a;自定义&#xff0c;好记就行 IP地址&#xff1a;数据库安装的服务器的ip 用户名&#xff1a; 密码&#xff1a; 点击测试连接&#xff0c;可以看是否能都连接上 …