From 165d5e0c19774c50c7778d5374d2a722da1a228c Mon Sep 17 00:00:00 2001 From: ruanyf Date: Thu, 3 May 2018 16:02:42 +0800 Subject: [PATCH] docs(class): edit class private property --- docs/class.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/class.md b/docs/class.md index f3171c5..5f0aa28 100644 --- a/docs/class.md +++ b/docs/class.md @@ -460,7 +460,7 @@ class Point { } ``` -上面代码中,`#x`就表示私有属性`x`,在`Point`类之外是读取不到这个属性的。还可以看到,私有属性与实例的属性是可以同名的(比如,`#x`与`get x()`)。 +上面代码中,`#x`就是私有属性,在`Point`类之外是读取不到这个属性的。由于井号`#`是属性名的一部分,使用时必须带有`#`一起使用,所以`#x`和`x`是两个不同的属性。 私有属性可以指定初始值,在构造函数执行时进行初始化。 @@ -475,7 +475,7 @@ class Point { 之所以要引入一个新的前缀`#`表示私有属性,而没有采用`private`关键字,是因为 JavaScript 是一门动态语言,使用独立的符号似乎是唯一的可靠方法,能够准确地区分一种属性是否为私有属性。另外,Ruby 语言使用`@`表示私有属性,ES6 没有用这个符号而使用`#`,是因为`@`已经被留给了 Decorator。 -该提案只规定了私有属性的写法。但是,很自然地,它也可以用来写私有方法。 +这种写法不仅可以写私有属性,还可以用来写私有方法。 ```javascript class Foo {