2.12JavaScript语言的可见性(Visibility)

JavaScript 语言成员的可见性只支持 publicprivate,不支持 protected

成员的可见性默认是 public,无需在成员标识符前显式添加。

可以通过在成员标识符前添加 # 的方式来声明 private 成员,# 也是标识符的一部分,所以操作 private 成员时必须带上 #

目前,JavaScript 语言不支持 #constructor() 私有构造函数语法。

成员可见性类自身内部继承外部调用(类调用或对象调用)
public可以可以可以
private可以不可以不可以

1.字段

class ClassWithPrivate {

  //private静态字段
  static #privateStaticField;
  static #privateStaticFieldWithInitializer = 36;

  //private实例字段
  #privateInstanceField;
  #privateInstanceFieldWithInitializer = 36;

}

2.方法

class ClassWithPrivate {

  //private静态方法
  static #privateStaticMethod() {
    //方法体
  }
  
  //private静态getter
  static get #privateStaticGetter() {
    //访问器属性体  
  }  
  
  //private静态setter
  static set #privateStaticSetter(参数) {
    //访问器属性体  
  }

  //private实例方法
  #privateInstanceMethod() {
    //方法体
  }

  //private实例getter
  get #privateInstanceGetter() {
    //访问器属性体 
  }  
  
  //private实例setter
  set #privateInstanceSetter(参数) {
    //访问器属性体
  }

}

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptlang/21258.html

(0)
上一篇 2020年9月11日
下一篇 2020年9月12日

相关推荐

  • JavaScript事件处理程序(或事件监听器)的详解

    1.概念 负责处理或响应事件而调用的函数称为 事件处理程序(或称为 事件监听器)。 概念 示例 事件类型(或称为 事件名称) “click” 事件目标 <button> 事件处理程序属性名 onclick 事件处理程序(或称为 事件监听器) myFunction() 事件对象 event 2.HTML事件处…

    JavaScript经验 2023年5月11日
    01160
  • JavaScript中script元素的位置

    过去,所有<script>元素都被放在页面的<head>标签内,如下面的例子所示: 这样做的好处是把外部的 CSS 和 JavaScript 文件都集中放在一起,缺点就是,必须把所有的 </head> 标签之前的 JavaScript 文件都下载、解析和解释执行完成后,才能开始渲染 <body>…

    JavaScript经验 2020年10月7日
    09130
  • npm exec和npx的区别

    从以上两者使用方式上,我们很容易可以看出,npm exec 命令后面的内容与 npx 命令后面的内容一致,npx 就是 npm exec 的简写,但在解析顺序方面还是有一些区别的,如下所示: npm exec 可以使用双连字符(–)标志(flag)来抑制 npm 应该发送到执行命令的开关(switch)和选项(opt…

    JavaScript经验 2021年7月24日
    01.3K0

发表回复

登录后才能评论