Fix spelling, grammar, typos in CONTRIBUTING, Basic Types, Functions, Interfaces. PR863
This commit is contained in:
parent
8db37da8f6
commit
6b0e7779bd
@ -9,8 +9,8 @@ TypeScript的核心原则之一是对值所具有的*结构*进行类型检查
|
||||
下面通过一个简单示例来观察接口是如何工作的:
|
||||
|
||||
```ts
|
||||
function printLabel(labelledObj: { label: string }) {
|
||||
console.log(labelledObj.label);
|
||||
function printLabel(labeledObj: { label: string }) {
|
||||
console.log(labeledObj.label);
|
||||
}
|
||||
|
||||
let myObj = { size: 10, label: "Size 10 Object" };
|
||||
@ -25,19 +25,19 @@ printLabel(myObj);
|
||||
下面我们重写上面的例子,这次使用接口来描述:必须包含一个`label`属性且类型为`string`:
|
||||
|
||||
```ts
|
||||
interface LabelledValue {
|
||||
interface LabeledValue {
|
||||
label: string;
|
||||
}
|
||||
|
||||
function printLabel(labelledObj: LabelledValue) {
|
||||
console.log(labelledObj.label);
|
||||
function printLabel(labeledObj: LabeledValue) {
|
||||
console.log(labeledObj.label);
|
||||
}
|
||||
|
||||
let myObj = {size: 10, label: "Size 10 Object"};
|
||||
printLabel(myObj);
|
||||
```
|
||||
|
||||
`LabelledValue`接口就好比一个名字,用来描述上面例子里的要求。
|
||||
`LabeledValue`接口就好比一个名字,用来描述上面例子里的要求。
|
||||
它代表了有一个`label`属性且类型为`string`的对象。
|
||||
需要注意的是,我们在这里并不能像在其它语言里一样,说传给`printLabel`的对象实现了这个接口。我们只会去关注值的外形。
|
||||
只要传入的对象满足上面提到的必要条件,那么它就是被允许的。
|
||||
|
Loading…
Reference in New Issue
Block a user