Typescript
Apparence
Description
Superset de Javascript, ajoute de nouvelles fonctionnalités.
- ajoute la vérification de type
- génère du JS
Classe
class MyClass {
public myField:number = 0;
get myProperty() {
return this.myField;
}
set myProperty(val) {
this.myField = val;
}
// créé un champs myField2 et l'instancie à la contruction
constructor(private myField2:number) {
}
public myFunction(param1:string):boolean {
return true;
}
}
let myObject = new MyClass();
myObject.myField = 1;
|
Property has no initializer and is not definitely assigned in the constructor
Changer la configuration de typescript.
tsconfig.json |
{
"compilerOptions": {
"strictPropertyInitialization": false
|
// initialiser
myString: string = "";
myString!: string;
myString: string | undefined;
|
Basic Types
let isDone: boolean = false;
let decimal: number = 6;
let color: string = "blue";
let today: Date = new Date();
let notSure: any = 4;
|
Array / Tableau
let list: number[] = [1, 2, 3];
// ajouter un élément
list.push(4);
// insérer un élément à un index donné
list.splice(index, 0, 100)
// supprimer un élément
const index = list.indexOf(key, 0);
if (index > -1) {
list.splice(index, 1);
}
|
for
for (let item of items) { }
|
if else
if () {
} else if () {
} else {
}
|
Import / Export
MyClass.ts |
export class MyClass { }
|
main.ts |
import { MyClass } from "./MyClass";
|
Compilation
tsconfig.json |
{
"include": [ "wwwroot/ts/**/*.ts" ],
"compilerOptions": {
"target": "es5",
"sourceMap": true
}
}
|
Ligne de commande
# permet d'utiliser tsc
npm install -g typescript
# génère un fichier my-script.js
tsc my-script.ts
# exécution du code
node my-script.ts
|