puddlejumper26 / blogs

Personal Tech Blogs
4 stars 1 forks source link

01 - Data Type in TypeScript #19

Open puddlejumper26 opened 4 years ago

puddlejumper26 commented 4 years ago

Array

var arr:number[ ] = [11,22,33];
var arr:Array<number> = [11,22,33];

Tuple

var arr: [number,string ] = [11, '33'];

Define an array with setting type, then it is any type

Enum

enum Flag { success =1 , error = 2};
let s: Flag = Flag.success;
console.log(s); // 1
enum Color {blue, red,'orange'}
console.log(Color.red); // 1

enum Color {blue, red = 3,'orange'}
console.log(Color.red); // 3
console.log(Color.orange); // 4

null and undefined

subtype of never

var num:number;
console.log(num); // undefined,   error

var num:undefined;
console.log(num);  // no error

var num:number | undefined;
console.log(num); // undefined,    in order to no error

never

var a:never;

a = ( ( )=>{
   throw new Error('this is an Error');
} )

Object

object is a type that represents the non-primitive type, i.e. anything that is not number, string, boolean, symbol, null, or undefined.

With object type, APIs like Object.create can be better represented.

declare function create(o: object | null): void;

create({ prop: 0 }); // OK
create(null); // OK

create(42); // Error
create("string"); // Error
create(false); // Error
create(undefined); // Error