JavaScript ES6类中的私有属性

是否可以在ES6类中创建私有属性?

这是一个例子。如何防止访问instance.property

class Something {

constructor(){

this.property = "test";

}

}

var instance = new Something();

console.log(instance.property); //=> "test"

回答:

专用字段(和方法)正在ECMA标准中实现。您可以立即从[babel 7和Stage3预设开始使用它们。

class Something {

#property;

constructor(){

this.#property = "test";

}

#privateMethod() {

return 'hello world';

}

getPrivateMessage() {

return this.#privateMethod();

}

}

const instance = new Something();

console.log(instance.property); //=> undefined

console.log(instance.privateMethod); //=> undefined

console.log(instance.getPrivateMessage()); //=> hello world

以上是 JavaScript ES6类中的私有属性 的全部内容, 来源链接: utcz.com/qa/435713.html

回到顶部