타입스트립트 컴파일러는 두 가지 역할을 수행한다.최신 TS/JS 코드를 브라우저에서 동작할 수 있도록 구버전의 JS로 트랜스파일 한다.코드의 타입 오류를 체크한다.이 두 가지는 서로 완벽히 독립적으로 동작한다. 즉, TS가 JS로 변환될 때 코드 내의 타입에는 영향을 주지 않으며 JS의 실행 시점(런타임)에도 타입은 영향을 미치지 않는다. 타입 오류가 있는 코드도 컴파일이 가능하다컴파일은 타입 체크와 독립적으로 동작하기에 타입 오류가 있는 코드도 컴파일이 가능하다.let x = 'hello';x = 1234;// '1234' 형식은 'string' 형식에 할당할 수 없다 타입 체크와 컴파일이 동시에 이뤄지는 C나 자바 같은 언어와는 달리 Typescript는 문제가 될 만한 부분을 알려주지만, 빌드는 멈..
타입
데이터 타입(이하 타입)은 값의 종류이다. ES11에서 새로운 원시값인 BigInt가 추가되었다. BigInt는 숫자 값이 나타내는 최대치인 2^53 - 1 보다 큰 정수를 표현할 수 있는 정수이다. 6.1 숫자 타입 int, long, float, double등과 같이 다양한 숫자 타입을 제공하는 C나 자바와는 달리 자바스크립트는 하나의 숫자타입만 가지며 숫자 타입의 값은 64비트 부동소수점 형식을 따른다. 즉, 모든 수는 실수로 처리하며 별도의 데이터 타입이 없다. 또한 모든 진수는 10진수로 해석된다. 10진수로 해석하기 이전에 모든 값은 저장될 때 2진 바이너리로 저장된다. // 모든 숫자 타입이다. var integer = 10; // 정수 var double = 10.12; // 실수 var ..
챕터 1 ) 타입 Type 🔸Javascript = 동적타입 언어 🔸Type : JS 엔진, 개발자 모두에게 값과 다른 값을 분별할 수 있는 고유한 내부 특성의 집합 🔸내장 타입 null undefined boolean number string object symbol Object를 제외한 이들은 원시 타입이다. Null은 Falsy한 유일한 원시값이며 타입은 Object이다. Function은 Object의 하위타입이며, 함수 인자의 갯수는 .length로 알 수 있다. Array 또한 Object의 하위 타입이다. 🔸 JS는 타입 강제를 하지 않는다. (number타입이였던 변수가 string으로 될 수 있다) 🔸 변수 값이 처음 할당된 값과 동일한 타입일 필요는 없다. 🔸 typeof의 반환 값은 ..