TypeScript: Unterschied zwischen den Versionen

Aus Info-Theke
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „= Links = * Angular = Konstanten, Variablen = * 'var'-Variablen sind global, 'let'-Variablen sind lokal (blockgebunden). <source lang="ts"> const E_DISK:…“)
 
Zeile 11: Zeile 11:
const onlyNumbers: number[] = [ 1, 2, 3];
const onlyNumbers: number[] = [ 1, 2, 3];
let arg: any = 5; ... arg = 'string';
let arg: any = 5; ... arg = 'string';
let width, height: number;
let rest: number[];
const [width, height] = [1, 2];
const [width, ...rest] = [1, 2, 3, 4]; // rest hat den Wert [2, 3, 4]
</source>
</source>


Zeile 24: Zeile 28:
== Any ==
== Any ==


== Klassen ==
= Klassen =
* Nur ein Konstruktor
* Nur ein Konstruktor
<source lang="ts">
<source lang="ts">
Zeile 39: Zeile 43:
   set number(value: number): void { this.privateNumber = value; }
   set number(value: number): void { this.privateNumber = value; }
   add(inc: number) => return privateNumber + number;
   add(inc: number) => return privateNumber + number;
  printAll(...args): void {
    print(args[0] + ': ' + args);
  }
}
}
class SuperUser extends User {
class SuperUser extends User {
Zeile 60: Zeile 67:
   lastname = 'Smith';
   lastname = 'Smith';
}
}
</source>
= Operatoren =
== spread-Operator ==
<source lang="ts">
let list1: number[] = [1, 2, 3];
let list2: number[] = [...list, 4, 5, ..list];
myFunc(1, 2, 3);
myFunc(...list1);
</source>
</source>

Version vom 14. August 2021, 14:19 Uhr

Links

Konstanten, Variablen

  • 'var'-Variablen sind global, 'let'-Variablen sind lokal (blockgebunden).
const E_DISK: string = 'disk error';
var globalLastMessage: string = 'Error';
for (let i=0; i < 4; i++){}
const myArray = [ 0, 'string', { firstname: 'Joe' } ];
const onlyNumbers: number[] = [ 1, 2, 3];
let arg: any = 5; ... arg = 'string';
let width, height: number;
let rest: number[];
const [width, height] = [1, 2];
const [width, ...rest] = [1, 2, 3, 4]; // rest hat den Wert [2, 3, 4]

Typen

String

 let x ='Hi';
 x = `2 lines:
Say: ${x}
`;

Number

Any

Klassen

  • Nur ein Konstruktor
class User {
  publicItems: string;
  private privateMember: string = 'secret';
  private privateNumber = 25; // impliziter Typ.
  constructor(items: string){
    this.privateItems = items;
  }
  append(item: string): string { this.publicItems += ';' + item; return this.publicItems; }
  // getter + setter:
  get currentNumber(): number { return this.privateNumber; }
  set number(value: number): void { this.privateNumber = value; }
  add(inc: number) => return privateNumber + number;
  printAll(...args): void {
    print(args[0] + ': ' + args);
  }
}
class SuperUser extends User {
  constructor(items: string){
    super(items);
  }
}

Interfaces

interface Contact {
  firstname: string;
  lastname: string;
}
const contact: Contact = {
  firstname: 'Joe',
  lastname: 'Doo'
}
class Address implements Contact {
  firstname = 'Eve';
  lastname = 'Smith';
}

Operatoren

spread-Operator

let list1: number[] = [1, 2, 3];
let list2: number[] = [...list, 4, 5, ..list];
myFunc(1, 2, 3);
myFunc(...list1);