mirror of
https://github.com/alrayyes/wiki.git
synced 2024-11-29 06:26:22 +00:00
40 lines
579 B
Markdown
40 lines
579 B
Markdown
|
---
|
||
|
id: 1bdd832a-3dee-4b31-9192-c51cde8a4b66
|
||
|
title: TypeScript Interfaces
|
||
|
---
|
||
|
|
||
|
# Example
|
||
|
|
||
|
``` typescript
|
||
|
interface Name {
|
||
|
first: string;
|
||
|
second: string;
|
||
|
}
|
||
|
|
||
|
var name: Name;
|
||
|
name = {
|
||
|
first: 'John',
|
||
|
second: 'Doe'
|
||
|
};
|
||
|
|
||
|
name = { // Error : `second` is missing
|
||
|
first: 'John'
|
||
|
};
|
||
|
name = { // Error : `second` is the wrong type
|
||
|
first: 'John',
|
||
|
second: 1337
|
||
|
};
|
||
|
```
|
||
|
|
||
|
## Class implementing interface
|
||
|
|
||
|
``` typescript
|
||
|
interface Point {
|
||
|
x: number; y: number;
|
||
|
}
|
||
|
|
||
|
class MyPoint implements Point {
|
||
|
x: number; y: number; // Same as Point
|
||
|
}
|
||
|
```
|