当前位置: 首页 > news >正文

JavaScript系列之公有、私有和静态属性和方法

文章の目录

  • 一、公有属性、公有方法
    • 1、定义
    • 2、理解
    • 3、ES5
    • 4、ES6
  • 二、私有属性、私有方法
    • 1、定义
    • 2、理解
    • 3、ES5
    • 4、ES6
  • 三、静态属性、静态方法
    • 1、定义
    • 2、理解
    • 3、ES5
    • 4、ES6
  • 写在最后


一、公有属性、公有方法

1、定义

指的是所属这个类的所有对象都可以访问的属性,叫做公有属性。

2、理解

一个模子刻出来的东西,都有的一样的属性和一样的能力。

3、ES5

function User(name, age) {this.name = name; // 公有属性this.age = age;
}
User.prototype.getName = function () {// 公有方法return this.name;
};
var user = new User("FELaoL", 22);
console.log(user.getName()); // FELaoL

4、ES6

class User {constructor(name, age) {this.name = name; // 公有属性this.age = age;}getName() {// 公有方法return this.name;}
}
let user = new User("FELaoL", 22);
console.log(user.getName()); // FELaoL

二、私有属性、私有方法

1、定义

私有属性只能在类的内部访问。

2、理解

模子的材质是铁,但从做出来的成品却不能知道模子的材质。

3、ES5

function User(name, age) {var name = name; // 私有属性var age = age;function consoleAge() {// 私有方法console.log(age);}consoleAge(age); // 22
}
var user = new User("FELaoL", 22);

4、ES6

class User {height = "178cm"; //公有属性#age = 25; //私有属性:只能在类的内部调用constructor(name, age) {this.name = name; // 公有属性this.age = age;this.sex = 0; // 公有属性let sex = 1; // 私有属性}getName() {return this.name;}
}
let user = new User("FELaoL", 22);
console.log(user.getName()); // FELaoL
console.log(user.sex); // 22
console.log(user.height); // 178cm
console.log(user.#age); // Uncaught SyntaxError: Private field '#age' must be declared in an enclosing class

三、静态属性、静态方法

1、定义

静态属性指的是 Class 本身的属性, 即Class.propname, 而不是定义在实例对象( this) 上的属性。定义在实例对象( this)上的属性为非静态属性。
静态方法是定在在类上,而不是定义在类的原型上,类可以调用,类的实例不能调用的方法。

2、理解

本质上是类属性、类方法

3、ES5

function Per() {}
Per.staticName = "FELaoL"; // 静态属性 是函数对象的属性
Per.call = function () {console.log("call");
}; // 静态方法
console.log(Per.staticName); // FELaoL
Per.call(); // call

4、ES6

class Person {static num = 10; // 静态属性constructor() {this.name = "张三";}static fn() {// 静态方法console.log("fn");}
}
console.log(Person.num); // 10
Person.fn(); // fn
let zhangsan = new Person();

写在最后

如果你感觉文章不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???
如果你觉得该文章有一点点用处,可以给作者点个赞;\\*^o^*//
如果你想要和作者一起进步,可以微信扫描二维码,关注前端老L~~~///(^v^)\\\~~~
谢谢各位读者们啦(^_^)∠※!!!

相关文章:

JavaScript系列之公有、私有和静态属性和方法

文章の目录一、公有属性、公有方法1、定义2、理解3、ES54、ES6二、私有属性、私有方法1、定义2、理解3、ES54、ES6三、静态属性、静态方法1、定义2、理解3、ES54、ES6写在最后一、公有属性、公有方法 1、定义 指的是所属这个类的所有对象都可以访问的属性,叫做公有…...

过滤器与拦截器

文章目录一、前言1、概述2、过滤器与拦截器异同2.1 简介2.2 异同2.3 总结3、Filters vs HandlerInterceptors二、过滤器1、概述2、生命周期2.1 生命周期概述2.2 基于函数回调实现原理3、自定义过滤器两种实现方式3.1 WebFilter注解注册3.2 过滤器(配置类注册过滤器&…...

spring boot 和cloud 版本升级

spring boot 和cloud 版本对应 背景:原来一直用的版本是Hoxton.SR12 2.3.10.RELEASE(SR12一路升,几乎没有影响,不需要测试,但是换大版本就有点担心) 去年2022年底黑鸭子报漏洞把springboot,clou…...

untiy 录制网络摄像头视频并保存到本地文件

网络摄像头使用的是海康威视的,关于如何使用Ump插件播放海康威视rtsp视频流,请参考我的这篇文章 内部有ump插件的下载链接 untiy接入 海康威视网络摄像头 录屏使用的插件是 AVPro movieCapture 4.6.3版, 插件和完整工程的下载链接放在本文的…...

微服务架构设计模式-(15)部署

关联概念 流程 将软件投入到生产环境 架构 软件运行的环境结构 生产环境四个关键功能 服务管理接口 使开发人员能够创建、更新和配置服务 运行时服务管理 确保始终运行一定数量的服务实例非中断更新 监控 让开发人员了解服务情况,包括日志文件和各种应用指标可观…...

Redis:数据结构

简单动态字符串SDS Redis没有直接使用C语言传统的字符串表示(以空字符结尾的字符数组,以下简称C字符串),而是自己构 建了一种名为简单动态字符串(simple dynamic string, SDS)的抽象类型,并将SDS用作Redis的默认字符 串表示。 SDS 的实现…...

2.18 设置language和中文输入法

文章目录一:设置language二:设置中文输入法一:设置language nvidia的开发板上默认只有English,需要点击如下管理: 接着进入如下界面: 此时图中的“汉语(中国)”应该是没有的&…...

图解LeetCode——剑指 Offer 28. 对称的二叉树

一、题目 请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。 二、示例 2.1> 示例 1: 【输入】root [1,2,2,3,4,4,3] 【输出】true 2.2> 示例 2: 【输入】root [1,2,2,nul…...

Qt Desginer布局方法

首先将我们需要的控件拖拽到一个合适的位置,该例子中用到了两个label,两个lineEdit和两个pushButton。 然后我们需要利用弹簧来控制控件到控件之间的距离以及控件到窗体边界的距离,因为这里只有一组控件(两个label,两个…...

C/C++、Java、Python的比较及学习(3)

函数间的值传递与地址传递 值传递方式:指主调函数把实参的值赋给形参。 在这种传递方式下,主调函数中的实参地址与被调函数中的形参地址是相互独立的。 函数被调用时,系统为形参变量分配内存单元,并将实参的值存入到对应形参的内存…...

智慧校园建设方案

第一章、 智慧教学 6.1. 校本资源库 提供校本资源管理功能,实现学校内的教学资源的共建共享,促进教师之间的交流学习,提升学校的整体教学水平。在本系统中学校可以统一采购资源接入到校本资源库中供教师下载使用,教师也可以将…...

ARM uboot 源码分析5 -启动第二阶段

一、start_armboot 解析6 1、console_init_f (1) console_init_f 是 console(控制台)的第一阶段初始化。_f 表示是第一阶段初始化,_r 表示第二阶段初始化。有时候初始化函数不能一次一起完成,中间必须要夹杂一些代码,…...

【ip neigh】管理IP邻居( 添加ARP\NDP静态记录、删除记录、查看记录)

一、邻居管理存在状态 1、NUD_NONE: 初始状态。当一个新的路由缓存条目被创建时,arp_bind_neighbour()函数被调用.如果找不到相匹配的ARP缓存条目, neigh_alloc()将创建一个新的ARP缓存条目并设置状态为NUD_NONE. 2、NUD_INCOMPLETE:未完成状…...

Java程序员线上排查问题神器-Arthas

文章目录前言一、Arthas是什么?二、快速入门1.下载2.如何运行三、常用命令1.dashboard2.trace总结前言 最近公司项目版本迭代升级,在开发新需求导致没什么时间写博客。 在开发需求的过程中,我写了一个接口,去批量调内部已经写好…...

上市公司企业持续创新能力、创新可持续性(原始数据+计算代码+计算结果)(2008-2021年)

数据来源:自主计算 时间跨度:2008-2021年 区域范围:沪深A股上市公司 指标说明: 参考何郁冰(2017)[1]的做法,将持续创新作为独立研究变量,同时采用创新投入指标(研发经费) 和创新…...

华为OD机试 - 考古学家(JS)

考古学家 题目 有一个考古学家发现一个石碑 但是很可惜 发现时其已经断成多段 原地发现N个断口整齐的石碑碎片 为了破解石碑内容 考古学家希望有程序能帮忙计算复原后的石碑文字组合数 你能帮忙吗 备注: 如果存在石碑碎片内容完全相同,则由于碎片间的顺序不影响复原后的碑…...

Leetcode.2100 适合打劫银行的日子

题目链接 Leetcode.2100 适合打劫银行的日子 Rating : 1702 题目描述 你和一群强盗准备打劫银行。给你一个下标从 0开始的整数数组 security,其中 security[i]是第 i天执勤警卫的数量。日子从 0开始编号。同时给你一个整数 time。 如果第 i天满足以下所…...

linux ubuntu查日志信息以及错误排查

目录 一、linux的日志文件 1、常用日志文件 2、其他日志文件 二、历史日志的查看 1、查看Logrotate的配置信息 2、查看日志配置 一、linux的日志文件 Linux系统中最有趣的(可能也是最重要的)目录之一是/var/log。根据文件系统层次结构标准,在系统中运行的大多数…...

DOS经典软件,落下帷幕,新型国产平台,蓬勃发展

提起DOS时代,总让人难以忘怀,陷入深深回忆中,风靡一时的许多软件,如今早已不在,这几款被称为DOS必装的软件,更是让人惋惜。 你还记得这图吗?堪称DOS系统最经典的软盘复制与映像生成软件&#xf…...

MongoDB数据存储格式

前言 之前分享了MongoDB的基本命名和视图等信息,本文分享一下MongoDB的数据存储类型,使用方式。基础的MongoDB信息就学习完啦,之后会继续分享MongoDB进阶的一些东西。 MongoDB数据存储格式前言1 文件结构1.2 字段名称2 点符号2.2 嵌入式文件…...

别再只调包了!手把手拆解OpenCV车位识别核心代码:像素统计、背景建模与形态学处理

从像素到决策:OpenCV车位识别核心技术实战解析 停车场监控画面中那些看似简单的"空"或"满"状态判定,背后隐藏着一系列精妙的图像处理魔法。今天,我们将抛开现成的API,直接解剖计算机视觉在车位检测中的核心算…...

2025新算法TOC优化VMD实战:六种熵值评估信号分解,一键Matlab出图

1. 为什么需要优化VMD参数? 第一次接触VMD(Variational Mode Decomposition)时,我和很多初学者一样被它的参数调优问题困扰。记得当时处理一组轴承振动信号,手动试了十几组K值和α值,结果要么模态分解不彻底…...

告别内存焦虑:用DiskANN在单机上搞定十亿向量检索的完整配置与调优指南

告别内存焦虑:用DiskANN在单机上搞定十亿向量检索的完整配置与调优指南 当你的推荐系统需要处理超过1亿条商品特征向量,或是生物医药团队要匹配数十亿分子结构时,传统内存索引方案会让服务器内存条价格直接突破年度预算。这时DiskANN就像一位…...

OpenClaw语音交互方案:nanobot镜像对接语音输入输出

OpenClaw语音交互方案:nanobot镜像对接语音输入输出 1. 为什么需要语音交互能力 作为一个长期使用OpenClaw的技术爱好者,我一直在思考如何让这个强大的自动化工具更加"人性化"。传统的命令行和文本交互方式虽然高效,但对于不擅长…...

单轴晶体中的偏振转换

摘要 当线偏振光聚焦并通过单轴晶体传播时,即使沿着光轴方向,不同的偏振分量之间也可能会发生复杂的转换。这种现象可以应用于例如产生涡旋光。以方解石晶体为例,这个用例在VirtualLab Fusion中证明了单轴晶体中的偏振转换。并且可以观察到…...

BERT文本分割-中文模型企业应用:内容平台文档结构化

BERT文本分割-中文模型企业应用:内容平台文档结构化 1. 引言:为什么需要文本分割技术 在日常工作中,我们经常会遇到这样的情况:会议记录、访谈稿、讲座内容等长篇口语文字材料缺乏段落结构,阅读起来十分困难。这些由…...

深度解析跨平台音频驱动:FlexASIO实战配置指南

深度解析跨平台音频驱动:FlexASIO实战配置指南 【免费下载链接】FlexASIO A flexible universal ASIO driver that uses the PortAudio sound I/O library. Supports WASAPI (shared and exclusive), KS, DirectSound and MME. 项目地址: https://gitcode.com/gh_…...

Windows 10下Cesium Terrain Builder编译踩坑实录(VS2015+GDAL环境配置)

Windows 10下Cesium Terrain Builder编译实战指南(VS2015GDAL环境配置) 在三维GIS开发领域,Cesium Terrain Builder(CTB)作为生成量化网格地形瓦片的核心工具,其编译过程却常让开发者望而生畏。特别是在Win…...

TikTok爆火:C语言代码让电脑无硬件发无线电,靠谱吗?

一、刷爆TikTok的技术神操作,无硬件也能发无线电? 在2026年3月17日这天,有一条C语言创意短视频火爆了TikTok,在当日,它获得了10万以上的播放量,还有5万以上个点赞之举,成功登上了当日C语言创意应…...

AppleRa1n:解锁iOS设备激活锁的专业指南与安全实践

AppleRa1n:解锁iOS设备激活锁的专业指南与安全实践 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 当您面对一台被激活锁困住的iPhone或iPad时,那种无助感就像是拥有一把无法打…...