Primitive Types: number, boolean, void, undefined, string, symbol, null
Object Types: functions, arrays, classes, objects
타입 어노테이션은 개발자가 타입스크립트에게 그 값이 갖는 타입이 무엇인지 알려주는 거고, 타입 인포런스는 타입스크립트가 그 값이 무슨 타입인지 알아내려는 노력을 말한다. 개발자가 타입을 지정하지 않을 경우 타입스크립트가 이게 스트링인지, 넘버인지, 불린인지를 추론해가는 과정이라 생각할 수 있다.
타입을 지정해줄 땐 콜론을 활용한다. 넘버라는 타입을 지정해줬는데 (변수에) 트루를 값으로 넣으면 에러가 발생한다. 지정한 타입대로 값의 형태를 집어넣어야 에러가 발생하지 않는다. 값의 형태와 타입의 형태가 일치해야 한다. It should be correct with types and shape of value.
JSON.parse()는 value의 type을 figure out하는 얘이다. 타입스크립트는 리턴값에 대해서만 infer한다. (함수) 리턴 타입을 지정해줬는데, 리턴을 안 해주면 에러가 발생한다.
Void는 어떠한 값도 리턴하지 않겠다라는 선언이다. (no return)
array에 타입을 지정해준 이유는 리스트에서 값을 추출할 때 인퍼런스를 도와주기 때문이다.
Interface creates a new type, describing the property names and value types of an object.
off the shelf
not deisgned or made to order but taken from existing stock or supplies.
"off-the-shelf software packages"
on the shelf
not used or wanted.
"a shoulder injury kept Jenkins on the shelf for hour games"
past an age when one might expect to have the opprotunity to marry (typically used of a woman)
"I'm all depressed about being left on the shelf cos I'm turning 27 on Sunday.