相关疑难解决方法(0)

JavaScript ES6类中的私有属性

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

这是一个例子.我怎样才能阻止访问instance.property

class Something {
  constructor(){
    this.property = "test";
  }
}

var instance = new Something();
console.log(instance.property); //=> "test"
Run Code Online (Sandbox Code Playgroud)

javascript class private-members ecmascript-6 es2015

410
推荐指数
17
解决办法
22万
查看次数

为什么Ruby文档中的方法前面有一个井号?

这一直困扰着我一段时间.当我看到任何以文本打印的Ruby方法时,它通常显示为:

Class#method
Run Code Online (Sandbox Code Playgroud)

要么

#method
Run Code Online (Sandbox Code Playgroud)

现在,我会用:

Class.method
Run Code Online (Sandbox Code Playgroud)

为什么所有Ruby方法都以井号开头?有什么理由吗?只是好奇.

ruby documentation

56
推荐指数
6
解决办法
1万
查看次数

为什么 js 类不使用 public 和 private 关键字?

因此,当他们创建 es6 类时,他们只是默认将所有内容设为公开,这对我来说有点奇怪,但我还是照做了,因为我仍然使用旧的 es5 样式基于作用域的类。

无论如何,几年过去了,我们在班级中加入了私人成员,这看起来很棒,但是你看一下 Synax:

somePublicVar = 10;
#somePrivateVar = 20;
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我们现在必须用哈希/磅符号作为私有内容的前缀,考虑到 JS 有publicprivate保留供将来使用的关键字,这似乎是一个非常奇怪的选择,所以现在我们想区分 public 和 private 为什么不是现在做。

public somePublicVar = 10;
private somePrivateVar = 20;
Run Code Online (Sandbox Code Playgroud)

所以,我相信有为什么,但我在努力找到一个技术原因,因为它现在似乎是把那些最完美的时间public,并private从保留“使用”,使得它多一点明确,明显为给定成员的访问修饰符。

javascript oop es6-class

0
推荐指数
1
解决办法
162
查看次数