TypeScript - 숫자: 초보자를 위한 종합 가이드

안녕하세요, 미래의 코딩 슈퍼스타! TypeScript의 숫자 세계로의 여정에 오신 것을 환영합니다. 여러분의 친절한 이웃 컴퓨터 선생님이자 저는 이 흥미로운 주제를 안내해 드리겠습니다. 코드를 한 줄도 작성해 본 적이 없더라도 걱정하지 마세요 - 우리는 매우 기본적인 것부터 시작하여 점진적으로 올라갈 것입니다. 그러니 커피 한 잔(또는 여러분의 좋아하는 음료)을 손에 쥐고, 이제 시작해 보겠습니다!

TypeScript - Numbers

TypeScript에서 숫자는 무엇인가요?

자세한 내용에 들어가기 전에, TypeScript에서 숫자가 무엇인지 이야기해 보겠습니다. 프로그래밍 세계에서 숫자는 가장 기본적인 데이터 타입 중 하나입니다. 우리의 코드에서 수학의 건축 블록과 같은 존재입니다. TypeScript는 JavaScript의 슈퍼셋이므로 숫자를 JavaScript와 유사하게 처리하지만, 몇 가지 추가적인 이점을 제공합니다.

문법: TypeScript에서 숫자를 어떻게 작성할까요?

TypeScript에서 숫자를 여러 가지 방법으로 작성할 수 있습니다. 몇 가지 예제를 보겠습니다:

let age: number = 30;
let price: number = 19.99;
let billion: number = 1e9;
let hexColor: number = 0xffffff;
let binaryValue: number = 0b1010;
let octalValue: number = 0o744;

이를 하나씩 설명해 보겠습니다:

  • age: 간단한 정수.
  • price: 십진수(floating-point number).
  • billion: 과학 표기법(1억).
  • hexColor: 16진수 표기법(화이트 컬러 in RGB).
  • binaryValue: 이진수 표기법(10을 십진수로 계산).
  • octalValue: 팔진수 표기법(484를 십진수로 계산).

TypeScript에서 모든 숫자는 부동소수점 값으로 저장됩니다. 이는 정수 30을 작성더라도 배후에서 30.0으로 저장된다는 뜻입니다.

숫자 타입 생성

TypeScript에서는 변수를 숫자 타입으로 명시적으로 선언할 수 있습니다. 이는 TypeScript가 JavaScript와 차별되는 중요한 기능 중 하나입니다 - 변수에 타입 어노테이션을 추가할 수 있습니다.

let score: number;
score = 95;

let temperature: number = -5;

function calculateArea(width: number, height: number): number {
return width * height;
}

let area = calculateArea(10, 20);
console.log(area); // 출력: 200

이 예제에서 scoretemperature를 숫자 타입으로 선언했습니다. 또한, 두 개의 숫자 매개변수를 받아 숫자를 반환하는 calculateArea 함수를 생성했습니다. 이는 우리가 실수로 문자열이나 다른 타입을 전달하는 것을 빨리 발견하는 데 도움이 됩니다.

숫자 객체 생성

평소의 코딩에서는 일반적으로 사용되지 않으며(또는 권장되지 않음) 그러나 Number 생성자를 사용하여 숫자 객체를 생성할 수 있습니다:

let numObject: Number = new Number(42);
console.log(typeof numObject); // 출력: 객체

let primitiveNum: number = 42;
console.log(typeof primitiveNum); // 출력: 숫자

Number를 사용할 때 대문자 'N'을 주의하세요. 이는 숫자를 래핑한 객체를 생성하며, 원시 숫자 타입(소문자 'n')과는 다릅니다. 대부분의 경우, 더 나은 성능과 간단한 코드를 위해 원시 타입을 사용하는 것이 좋습니다.

숫자 속성

TypeScript는 JavaScript의 Number 객체에서 몇 가지 유용한 속성을 상속받습니다. 이들은 정적 속성으로, Number의 인스턴스를 생성하지 않고도 사용할 수 있습니다.

다음은 가장 흔히 사용되는 숫자 속성의 표입니다:

속성 설명 예제
Number.MAX_VALUE 가장 크게 표현할 수 있는 숫자 console.log(Number.MAX_VALUE);
Number.MIN_VALUE 가장 작게 표현할 수 있는 양수 console.log(Number.MIN_VALUE);
Number.NaN '아니' 수(NaN) 값 console.log(Number.NaN);
Number.NEGATIVE_INFINITY 음 무한대 console.log(Number.NEGATIVE_INFINITY);
Number.POSITIVE_INFINITY 양 무한대 console.log(Number.POSITIVE_INFINITY);

이제 이러한 속성을 사용해 보겠습니다:

console.log(Number.MAX_VALUE); // 출력: 1.7976931348623157e+308
console.log(Number.MIN_VALUE); // 출력: 5e-324
console.log(Number.NaN); // 출력: NaN
console.log(Number.NEGATIVE_INFINITY); // 출력: -Infinity
console.log(Number.POSITIVE_INFINITY); // 출력: Infinity

이러한 속성은 극한 값이나 특별한 사례를 확인할 때 매우 유용할 수 있습니다.

숫자 메서드

TypeScript 숫자는 여러 가지 내장된 메서드를 제공하여 다양한 연산을 수행할 수 있습니다. 다음은 일반적으로 사용되는 메서드의 표입니다:

메서드 설명 예제
toFixed() 특정 소수점 자리수로 숫자를 포맷 let pi = 3.14159; console.log(pi.toFixed(2));
toPrecision() 지정된 길이로 숫자를 포맷 let bigNumber = 1234.5678; console.log(bigNumber.toPrecision(5));
toString() 숫자를 문자열로 변환 let num = 42; console.log(num.toString());
valueOf() Number 객체의 원시 값을 반환 let numObj = new Number(42); console.log(numObj.valueOf());

이제 이러한 메서드를 사용해 보겠습니다:

let pi = 3.14159;
console.log(pi.toFixed(2)); // 출력: "3.14"

let bigNumber = 1234.5678;
console.log(bigNumber.toPrecision(5)); // 출력: "1234.6"

let num = 42;
console.log(num.toString()); // 출력: "42"

let numObj = new Number(42);
console.log(numObj.valueOf()); // 출력: 42

이러한 메서드는 숫자를 표시하거나 다른 연산을 위해 변환할 때 매우 유용할 수 있습니다.

결론

와우! 오늘 우리는 TypeScript에서 숫자의 기본 문법에서부터 Number 속성과 메서드와 같은 고급 개념까지 많은 내용을 다루었습니다. 숫자를 다루는 것은 프로그래밍의 기본 기술 중 하나이며, 이러한 개념을 습득하면 여러분의 코딩 여정에 큰 도움이 될 것입니다.

마무리로, 작은 코딩 유머를 하나 준비했습니다: 왜 프로그래머들은 다크 모드를 좋아할까요? 빛이 버그를吸引了嘛! ?

계속 연습하고, 호기심을 가지고 있으며, 이러한 숫자 개념을 자신의 코드에서 실험해 보지 마세요. 언제 그때문에, 여러분은 숫자를 계산하고 조작하는 프로가 될 것입니다! 다음 번에 만날 때까지, 즐겁게 코딩하세요!

Credits: Image by storyset