[typescript] 어떤 경우에 타입 추론을 사용하는 것이 적절한가?
-
변수 초기화: 변수를 선언할 때 초기값을 할당하면 해당 값의 타입이 추론됩니다.
let str = "Hello"; // str은 string으로 추론됩니다.
-
함수 반환 값: 함수가 명시적인 타입을 가지지 않을 때, 반환 값으로부터 타입을 추론할 수 있습니다.
function add(a: number, b: number) { return a + b; // 반환 값으로부터 number 타입을 추론합니다. }
-
배열과 객체 초기화: 배열이나 객체를 초기화할 때 요소들의 타입을 기반으로 타입을 추론합니다.
let numbers = [1, 2, 3]; // numbers는 number[]으로 추론됩니다. let person = { name: "Alice", age: 30 }; // person은 { name: string, age: number }로 추론됩니다.
-
인터페이스와 제네릭 타입: 인터페이스나 제네릭 타입을 사용할 때, 자동으로 해당 타입을 추론합니다.
interface Box<T> { value: T; } let box = { value: "test" }; // box는 Box<string>으로 추론됩니다.
타입 추론을 사용하면 코드를 간결하게 하고 실수를 줄일 수 있습니다. 그러나 가독성이나 명시성이 필요한 경우에는 명시적인 타입 선언을 고려해야 합니다.