javascript真●私有变量

想必大家已经见过私有变量的各种花式写法。
以下是真●私有变量标准写法。

标准写法

class Foo {
    pub = "pub";
    #pri = "pri";
    get Pri () {
        return this.#pri;
    }
    set Pri (v) {
        this.#pri = v;
    }
}
const f = new Foo;
f.pub      \\ pub
f.#pri     \\ Uncaught SyntaxError: Undefined private field #pri: must be declared in an enclosing class
f.Pri      \\ Pri 
f.Pri = "real pri"
f.Pri      \\ real pri

兼容情况

  1. 浏览器上,只有chrome直接支持(下笔时chrome的最新版本为74)。
  2. 随着 nodejs 12 的发布,服务端已经可以直接使用这个语法。
    原文作者:千年虫
    原文地址: https://segmentfault.com/a/1190000019038069
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞