function calculateSum(numbers: number[]): number {
return numbers.reduce((sum, num) => sum + num, 0);
}
const result: number = calculateSum([1, 2, 3, 4, 5]);
console.log(result); // Output: 15
function calculateSum(numbers: number[]) {
return numbers.reduce((sum, num) => sum + num, 0);
}
const result = calculateSum([1, 2, 3, 4, 5]);
console.log(result); // Output: 15
리턴값의 타입을 지정한 경우: 함수가 number 타입의 값을 반환한다는 것을 명시적으로 나타냅니다. 코드를 읽는 사람들은 함수의 리턴값이 항상 숫자라는 것을 확신할 수 있습니다.
리턴값의 타입을 지정하지 않은 경우: TypeScript는 배열의 숫자들을 더한 결과값을 타입 추론을 통해 결정합니다. 일반적으로는 결과값이 숫자로 추론될 것입니다. 그러나 TypeScript가 확신을 가지지 못할 경우, 추론된 타입은 보다 일반적인 유니온 타입이 될 수 있습니다.
따라서 대부분의 상황에서 TypeScript가 추론한 타입은 맞을 수 있지만, 가끔씩은 의도하지 않은 동작이 발생할 수 있습니다. 이는 TypeScript가 추론한 타입을 기반으로 코드를 분석하고 타입 검사를 수행하기 때문입니다. 따라서 명시적인 타입 지정을 통해 의도하지 않은 동작을 방지하고 코드의 가독성을 높일 수 있습니다.
<user>는 단일 객체 또는 값에 대한 타입을 지정하는 것을 나타냅니다. 예를 들어, 단일 사용자 정보를 표현하는 객체의 타입을 정의할 때 사용할 수 있습니다.
type User = {
id: number;
name: string;
age: number;
};
</ br>
<user[]>는 배열에 포함된 여러 사용자 객체에 대한 타입을 지정하는 것을 나타냅니다. 배열 안에 여러 사용자 정보가 있는 경우에 사용됩니다.
type User = {
id: number;
name: string;
age: number;
};
const users: User[] = [
{ id: 1, name: "Alice", age: 25 },
{ id: 2, name: "Bob", age: 30 },
// ...
];