1
0
mirror of https://github.com/ruanyf/es6tutorial.git synced 2025-05-24 10:22:23 +00:00

docs(class): fix 实例属性的新写法 #792

This commit is contained in:
ruanyf 2019-01-14 22:35:27 +08:00
parent 7791c64d30
commit 78caba3a83

View File

@ -617,7 +617,7 @@ Bar.classMethod() // "hello, too"
## 实例属性的新写法
实例属性除了`constructor()`方法里面定义,也可以直接写在类的最顶层。
实例属性除了定义在`constructor()`方法里面的`this`上面,也可以定义在类的最顶层。
```javascript
class IncreasingCounter {
@ -634,7 +634,7 @@ class IncreasingCounter {
}
```
上面代码中,实例属性`this._count`定义在`constructor()`方法里面。另一种写法是,这个属性也可以定义在类的最顶层。
上面代码中,实例属性`this._count`定义在`constructor()`方法里面。另一种写法是,这个属性也可以定义在类的最顶层,其他都不变
```javascript
class IncreasingCounter {
@ -651,7 +651,20 @@ class IncreasingCounter {
上面代码中,实例属性`_count`与取值函数`value()``increment()`方法,处于同一个层级。这时,不需要在实例属性前面加上`this`
这种新写法的好处是,所有实例属性都定义在类的头部,看上去比较整齐,一眼就能看出这个类有哪些实例属性。
这种新写法的好处是,所有实例对象自身的属性都定义在类的头部,看上去比较整齐,一眼就能看出这个类有哪些实例属性。
```javascript
class foo {
bar = 'hello';
baz = 'world';
constructor() {
// ...
}
}
```
上面的代码,一眼就能看出,`foo`类有两个实例属性,一目了然。另外,写起来也比较间洁。
## 静态属性