전체 글

개발자 린다씨
👶 TypeScript

unknown

unknown We may need to describe the type of variables that we do not know when we are writing an application. 응용 프로그램을 작성할 때 모르는 변수의 타입을 묘사해야 할 수도 있습니다. These values may come from dynamic content - e.g from the user - or we may want to intentionally accept all values in our API. 이러한 값은 동적 콘텐츠(예: 사용자로부터, 또는 우리 API의 모든 값을 의도적으로 수락하기를 원할 수 있습니다.) In these cases, we want to provide a type that tells..

👶 TypeScript

any

any any는 어떤 타입이어도 상관없는 타입입니다. TypeScript에선 컴파일 타임에 모두가 타입이 있어야 하므로 프로그래머와 TypeScript 둘 다 타입을 알 수 없는 상황에서는 기본 타입인 any라고 가정합니다. any로 뭐든지 할 수 있지만 꼭 필요한 상황이 아니라면 사용하지 않는 것이 좋습니다. 왜냐하면 컴파일 타임에 타입 체크가 정상적으로 이뤄지지 않기 때문입니다. 타입이란 값과 값으로 수행할 수 있는 작업의 집합입니다. any는 모든 값의 집합이므로 any는 모든 것을 할 수 있습니다. 즉, any를 사용하면 값이 JavaScript처럼 동작하기 시작하면서 타입 검사기라는 마법이 더 이상 작동하지 않게 됩니다. The any will continue to propagate throug..

👶 TypeScript

Tuple

튜플(Tuple) 튜플(Tuple)은 배열의 서브 타입이며 객체입니다. 튜플은 길이가 고정되었고, 각 인덱스의 타입이 알려진 배열의 일종입니다. 다른 타입과 달리 튜플은 선언할 때 타입을 명시해야 합니다. JavaScript에선 배열과 튜플에 같은 문법(대괄호)을 사용하는데, TypeScript에선 대괄호를 배열 타입으로 추론하기 때문입니다. let a: [number] = [1]; // [이름, 성씨, 생년] 튜플 let b: [string, string, number] = ['tom', 'Bae', 1996]; b = ['princess', 'white', 'ii', 1200]; // error TS2322: 'string'은 'number' 타입에 할당할 수 없음 튜플은 선택형 요소도 지원합니다. ..

👶 TypeScript

Array

Array JavaScript처럼 TypeScript 배열도 연결(concatenation), 푸시(pushing), 검색(searching), 슬라이스(slicing) 등을 지원하는 특별한 객체입니다. TypeScript는 T[]와 Array라는 두 가지 배열 문법을 지원합니다. 성능, 의미상 두 표현은 같습니다. let a = [1, 2, 3]; // number var b = ['a', 'b']; // string[] let c: string[] = ['a']; // string[] let d = [1, 'a']; // (string | number)[] const e = [1, 'b']; // (string | number)[] let f = ['red']; f.push('blue'); f.pus..

👶 TypeScript

객체(Object)

객체(Object) TypeScript의 객체(object) 타입은 객체의 형태(shape)를 정의합니다. 그러나 객체 타입만으로는 ({}로 만든) 간단한 객체와 (new를 사용해 만든) 복잡한 객체를 구분할 수 없습니다. 이는 JavaScript가 구조 기반 타입(structural type)을 갖도록 설계되었기 때문입니다. 따라서 TypeScript도 이름 기반 타입(nominal type) 스타일보다는 JavaScript 스타일을 선호합니다. 구조 기반 타입화 구조 기반 타입화에선 객체의 이름에 상관없이 객체가 어떤 프로퍼티를 갖고 있는지를 따집니다.(이름 기반 타입에선 이름을 따집니다.) 일부 언어에서는 덕 타이핑(duck typing)이라고 합니다(겉표지만 보고 책을 판단하지 않는 것과 같은 원..

👶 TypeScript

null & undefined

null & undefined In TypeScript, both undefined and null actually have their types named undefined and null respectively. TypeScript에서, undefined와 null은 실제로 각각 undefined와 null이라는 타입을 가집니다. Much like void, they're not extremely useful on their own. void와 마찬가지로, 그 자체로는 설정을 하지 않으면 그다지 유용하지 않습니다.(둘 다 소문자만 존재합니다.) // 아래의 변수들에 할당할 수 있는 것들은 거의 없습니다. let u: undefined = undefined; let n: null = null; unde..

👶 TypeScript

symbol

symbol symbol(심벌)은 ES2015에 새로 추가된 기능입니다. 실무에선 자주 사용하지 않는 편이며 객체와 맵에서 문자열 키를 대신하는 용도로 사용합니다. symbol 키를 사용하면, 사람들이 잘 알려진 키만 사용하도록 강제할 수 있으므로 키를 잘못 설정하는 실수를 방지합니다. 객체의 기본 반복자(Symbol.iterator)를 설정하거나 객체가 어떤 인스턴스인지(Symbol.hasInstance)를 런타임에 오버라이딩 하는 것과 비슷한 기능을 제공합니다. symbol 타입으로는 할 수 있는 동작이 별로 없습니다:( let a = Symbol('a'); // symbol let b: symbol = Symbol('b'); // symbol var c = a === b; // boolean let..

👶 TypeScript

string

string 다른 언어에서와 마찬가지로 TypeScript에서도 텍스트 형식을 참조하기 위해 `string` 형식을 사용합니다. JavaScript와 마찬가지로 TypeScript는 문자열 데이터를 둘러싸기 위해 큰 따옴표(" ") 나, 작은따옴표(' ')를 사용합니다. let name: string = "linda"; name = "andy"; Template String 행에 걸쳐 있거나, 표현식을 넣을 수 있는 문자열입니다. 이 문자열은 backick (= backquote) 기호에 둘러싸여 있습니다. 포함된 표현식은 `${ expr } `와 같은 형태로 사용합니다. let fullName: string = `Lee Dayeon`; let age: number = 24; let sentence: s..

👶 TypeScript

number

number JavaScript와 같이 TypeScript의 모든 숫자는 부동 소수점 값입니다. TypeScript는 16진수 및 10진수 리터럴 외에도, ECMAScript 2015에 도입된 2진수 및 8진수를 지원합니다. number 타입은 모든 숫자(정수, 소수, 양수, 음수, Infinity, NaN 등)의 집합입니다. number 타입에선 덧셈(+), 뺄셈(-), 모듈로(%), 비교(

개발자 린다씨
Cozy_Linda