Skip to content

Commit 165d5e0

Browse files
committed
docs(class): edit class private property
1 parent 63580eb commit 165d5e0

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

docs/class.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,7 @@ class Point {
460460
}
461461
```
462462

463-
上面代码中,`#x`就表示私有属性`x`,在`Point`类之外是读取不到这个属性的。还可以看到,私有属性与实例的属性是可以同名的(比如,`#x``get x()`
463+
上面代码中,`#x`就是私有属性,在`Point`类之外是读取不到这个属性的。由于井号`#`是属性名的一部分,使用时必须带有`#`一起使用,所以`#x``x`是两个不同的属性
464464

465465
私有属性可以指定初始值,在构造函数执行时进行初始化。
466466

@@ -475,7 +475,7 @@ class Point {
475475

476476
之所以要引入一个新的前缀`#`表示私有属性,而没有采用`private`关键字,是因为 JavaScript 是一门动态语言,使用独立的符号似乎是唯一的可靠方法,能够准确地区分一种属性是否为私有属性。另外,Ruby 语言使用`@`表示私有属性,ES6 没有用这个符号而使用`#`,是因为`@`已经被留给了 Decorator。
477477

478-
该提案只规定了私有属性的写法。但是,很自然地,它也可以用来写私有方法
478+
这种写法不仅可以写私有属性,还可以用来写私有方法
479479

480480
```javascript
481481
class Foo {

0 commit comments

Comments
 (0)