Skip to content

Commit 5203264

Browse files
committed
Fix links
1 parent 89a37b2 commit 5203264

File tree

6 files changed

+30
-29
lines changed

6 files changed

+30
-29
lines changed

advanced/tuple.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ console.log(xcatliu[2].slice(1));
8181
// index.ts(4,24): error TS2339: Property 'slice' does not exist on type 'string | number'.
8282
```
8383

84-
之前提到过,[如果一个值是联合类型,我们只能访问此联合类型的所有类型里共有的属性或方法。](/from-javascript-to-typescript/content/basics/union-types.html#访问联合类型的属性或方法)
84+
之前提到过,[如果一个值是联合类型,我们只能访问此联合类型的所有类型里共有的属性或方法。](../basics/union-types.md#访问联合类型的属性或方法)
8585

8686
> Tip: 元组的概念来源于 [C#][C# Tuple]。区别是,C# 中的元组是只读的。
8787

advanced/use-of-class.md

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ TypeScript 除了实现了所有 ES6 中的类的功能以外,还添加了一
1313
- 类(Class):定义了一件事物的抽象特点,包含它的属性和方法
1414
- 对象(Object):类的实例,通过 `new` 生成
1515
- 面向对象(OOP)的三大特性:封装、继承、多态
16-
- 封装(Encapsulation):将对数据的操作细节隐藏起来,只暴露对外的接口。外界调用端不需要(也不可能)知道细节,就能通过对外提供的接口来访问该对象,同时也保证了外界无法任意更改对象内部的数据。比如一个账单对象,拥有打印账单方法,外界可以直接调用这个方法即可打印账单,同时外界无法直接更改账单内容
17-
- 继承(Inheritance):子类继承父类,即子类除了拥有父类的所有特性外,还有一些更具体的特性
18-
- 多态(Polymorphism):由继承而产生了相关的不同的类,对同一个方法可以有不同的响应。比如 `Cat``Dog` 都继承自 `Animal`,但是分别实现了自己的 `eat` 方法,此时针对一个对象实例,我们无需了解它是 `Cat` 还是 `Dog`直接调用 `eat` 方法也是可以的,程序会自动判断出来应该执行哪个 `eat`
19-
- 存取器(getter & setter):用以改变属性的赋值和读取行为
20-
- 修饰符(Modifiers):修饰符是一些关键字,用于限定成员或类型的性质。比如 `public` 表示是公有属性或方法
16+
- 封装(Encapsulation):将对数据的操作细节隐藏起来,只暴露对外的接口。外界调用端不需要(也不可能)知道细节,就能通过对外提供的接口来访问该对象,同时也保证了外界无法任意更改对象内部的数据
17+
- 继承(Inheritance):子类继承父类,子类除了拥有父类的所有特性外,还有一些更具体的特性
18+
- 多态(Polymorphism):由继承而产生了相关的不同的类,对同一个方法可以有不同的响应。比如 `Cat``Dog` 都继承自 `Animal`,但是分别实现了自己的 `eat` 方法。此时针对某一个实例,我们无需了解它是 `Cat` 还是 `Dog`就可以直接调用 `eat` 方法,程序会自动判断出来应该如何执行 `eat`
19+
- 存取器(getter & setter):用以改变属性的读取和赋值行为
20+
- 修饰符(Modifiers):修饰符是一些关键字,用于限定成员或类型的性质。比如 `public` 表示公有属性或方法
2121
- 抽象类(Abstract Class):抽象类是供其他类继承的基类,抽象类不允许被实例化。抽象类中的抽象方法必须在子类中被实现
2222
- 接口(Interfaces):不同类之间公有的属性或方法,可以抽象成一个接口。接口可以被类实现(implements)。一个类只能继承自另一个类,但是可以实现多个接口
2323

@@ -27,7 +27,9 @@ TypeScript 除了实现了所有 ES6 中的类的功能以外,还添加了一
2727

2828
### 属性和方法
2929

30-
使用 `class` 定义类,使用 `constructor` 定义构造函数,通过 `new` 生成新实例的时候,会自动调用构造函数。
30+
使用 `class` 定义类,使用 `constructor` 定义构造函数。
31+
32+
通过 `new` 生成新实例的时候,会自动调用构造函数。
3133

3234
```js
3335
class Point {
@@ -118,11 +120,12 @@ class MyClass {
118120
myProp = 42;
119121

120122
constructor() {
121-
console.log(this.myProp);
123+
// ...
122124
}
123125
}
124126

125-
let a = new MyClass(); // 42
127+
let a = new MyClass();
128+
console.log(a.myProp); // 42
126129
```
127130

128131
### 静态属性
@@ -147,11 +150,9 @@ console.log(MyClass.myProp); // 42
147150

148151
TypeScript 可以使用三种访问修饰符(Access Modifiers),分别是 `public``private``protected`
149152

150-
`public` 修饰的属性或方法是公有的,可以在任何地方被访问到,默认所有的属性和方法都是 `public` 的。
151-
152-
`private` 修饰的属性或方法是私有的,不能在声明它的类的外部访问。
153-
154-
`protected` 修饰的属性或方法是受保护的,它和 `private` 类似,区别是她在子类中也是允许被访问的。
153+
- `public` 修饰的属性或方法是公有的,可以在任何地方被访问到,默认所有的属性和方法都是 `public`
154+
- `private` 修饰的属性或方法是私有的,不能在声明它的类的外部访问
155+
- `protected` 修饰的属性或方法是受保护的,它和 `private` 类似,区别是它在子类中也是允许被访问的
155156

156157
下面举一些例子:
157158

@@ -237,7 +238,7 @@ class Cat extends Animal {
237238

238239
### 抽象类
239240

240-
`abstract` 用于定义抽象类和抽象类中的抽象方法
241+
`abstract` 用于定义抽象类和其中的抽象方法
241242

242243
```ts
243244
abstract class Animal {
@@ -295,7 +296,7 @@ let cat = new Cat('Tom');
295296

296297
上面的例子中,我们实现了抽象方法 `move`,编译通过了。
297298

298-
需要注意的是,即使是抽象方法,TypeScript 的编译结果中,任然会存在这个类,上面的代码的编译结果是:
299+
需要注意的是,即使是抽象方法,TypeScript 的编译结果中,仍然会存在这个类,上面的代码的编译结果是:
299300

300301
```js
301302
var __extends = (this && this.__extends) || function (d, b) {
@@ -324,7 +325,7 @@ var cat = new Cat('Tom');
324325

325326
### 实现接口
326327

327-
接口在 TypeScript 中是一个非常灵活的概念,实际上,我们在[对象的类型——接口](/from-javascript-to-typescript/basics/type-of-object-interfaces.html)一章中,已经接触了接口的一种用法了。这里是接口的第二种用法。想了解接口的所有用法,可以参考???。
328+
接口在 TypeScript 中是一个非常灵活的概念,实际上,我们在[对象的类型——接口](../basics/type-of-object-interfaces.html)一章中,已经接触了接口的一种用法了。这里是接口的第二种用法。想了解接口的所有用法,可以参考???。
328329

329330
实现(implements)是面向对象中的一个重要概念。一般来讲,一个类只能继承自另一个类,有时候不同类之间可以有一些共有的特性,这时候就可以把特性提取成接口(interfaces),用 `implements` 关键字来实现。这个特性大大提高了面向对象的灵活性。
330331

basics/README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22

33
本部分介绍了 TypeScript 中的常用类型和一些基本概念,旨在让大家对 TypeScript 有个初步的理解。具体内容包括:
44

5-
- [基本类型](/from-javascript-to-typescript/content/basics/primitive-types.html)
6-
- [任意值(Any)](/from-javascript-to-typescript/content/basics/any.md)
7-
- [类型推论](/from-javascript-to-typescript/content/basics/type-inference.md)
8-
- [联合类型(Union Types)](/from-javascript-to-typescript/content/basics/union-types.md)
9-
- [对象的类型——接口](/from-javascript-to-typescript/content/basics/type-of-object-interfaces.html)
10-
- [数组的类型](/from-javascript-to-typescript/content/basics/type-of-array.html)
11-
- [函数的类型](/from-javascript-to-typescript/content/basics/type-of-function.html)
12-
- [声明文件(.d.ts)](/from-javascript-to-typescript/content/basics/declaration-files.html)
13-
- [内置对象](/from-javascript-to-typescript/content/basics/built-in-objects.md)
5+
- [基本类型](primitive-types.md)
6+
- [任意值(Any)](any.md)
7+
- [类型推论](type-inference.md)
8+
- [联合类型(Union Types)](union-types.md)
9+
- [对象的类型——接口](type-of-object-interfaces.md)
10+
- [数组的类型](type-of-array.md)
11+
- [函数的类型](type-of-function.md)
12+
- [声明文件(.d.ts)](declaration-files.md)
13+
- [内置对象](built-in-objects.md)

basics/type-of-object-interfaces.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
理解面向对象中的接口,需要对类、继承、抽象类等有相关的概念,感兴趣的朋友可以看看这篇博客:[java提高篇(五)——抽象类与接口]
1010

11-
TypeScript 中的接口是一个非常灵活的概念,除了可用于[对类的一部分行为进行抽象](/from-javascript-to-typescript/advanced/use-of-class.html#实现接口)以外,也常用于对「对象的形状(Shape)」进行描述,想了解接口的所有用法,可以参考???。
11+
TypeScript 中的接口是一个非常灵活的概念,除了可用于[对类的一部分行为进行抽象](../advanced/use-of-class.md#实现接口)以外,也常用于对「对象的形状(Shape)」进行描述,想了解接口的所有用法,可以参考???。
1212

1313
## 简单的例子
1414

introduction/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
本部分介绍了在学习 TypeScript 之前需要了解的知识,具体包括:
44

5-
- [什么是 TypeScript](/from-javascript-to-typescript/content/introduction/what-is-typescript.html)
5+
- [什么是 TypeScript](what-is-typescript.md)
66
- [安装 TypeScript]
77
- [Hello World]

introduction/what-is-typescript.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
### TypeScript 非常包容
2626

2727
- TypeScript 是 JavaScript 的超集,`.js` 文件可以直接重命名为 `.ts` 即可
28-
- 即使不显式的定义类型,也能够自动做出[类型推论](/from-javascript-to-typescript/content/basics/type-inference.html)
28+
- 即使不显式的定义类型,也能够自动做出[类型推论](../basics/type-inference.md)
2929
- 可以定义从简单到复杂的一切类型
3030
- 即使 TypeScript 编译报错,也可以生成 JavaScript 文件
3131
- 兼容第三方库,即使第三方库不是用 TypeScript 写的,也可以编写单独的类型文件供 TypeScript 读取

0 commit comments

Comments
 (0)