ts 딥다이브
🦼

ts 딥다이브

생성일
Dec 4, 2021 02:51 AM
태그
ts
 
 

js

class Something {
    static instances = 0
    constructor() {
        Something.instances++
    }
}
var s1 = new Something()
var s2 = new Something()
console.log(Something.instances) // 2
  • 클래스의 static은 모든 인스턴스에서 공유되는 값
 
 

callable

interface Overloaded {
    (foo: string): string
    (foo: number): number
}
// 예제 구현
function stringOrNumber(foo: number): number;
function stringOrNumber(foo: string): string;
function stringOrNumber(foo: any): any {
    if (typeof foo === 'number') {
        return foo * foo;
    } else if (typeof foo === 'string') {
        return `hello ${foo}`;
    }
}
const overloaded: Overloaded = stringOrNumber;
// 사용 사례
const str = overloaded(''); // `str`의 타입은 `string`으로 추론됨
const num = overloaded(123); // `num`의 타입은 `number`로 추론됨
함수의 타입을 정의할 수 있음 (인자와 리턴타입)
 

Loading Comments...