let person:string = 'Tom';
let age:number = '33';
let isAdult:boolean = true;
let a:number[] = [1, 2, 3];
let a2:Array<number> = [1, 2, 3];
let week1:string[] = ['monday', 'tuesday', 'wednesday'];
let week2:Array<string> = ['monday', 'tuesday', 'wednesday'];
let b:[string, number];
b = ['aa', 11]
b = [11, 'aa']
let user:object;
user = {
name: 'Jane',
age: 25
}
console.log(user.name)
type Score = 'A' | 'B' | 'C' | 'D' | 'F'
interface User {
name: string;
age: number;
gender?: string;
readonly birth: number
[grade:number]: Score;
}
let user:User = {
name: 'Jane',
age: 25
}
console.log(user.name)
interface Add {
(num1:number, num2:number):number;
}
const add:Add = function(a, b) {
return a + b;
}
interface IsAdult {
(age:number):boolean;
}
const a:IsAdult = (age) => {
return age > 19;
}
function sayHello():void {
console.log('hello');
}
function showError():never {
throw new Error();
}
function infLoop():never {
while (true) {
}
}
enum GenderType {
Male,
Female,
GenderNeutral
}
enum GenderType {
Male = 'male',
Female = 'female',
GenderNeutral = 'genderNeutral'
}
interface Student {
...
gender: 'male' | 'female' | 'genderNeutral'
...
}
참고-땅콩코딩 youtube
참고-코딩앙마 youtube