Narrowing(내로잉) TypeScript에서 특정 코드 블록 내에서 변수의 타입을 더 구체적으로 좁히는 것을 의미합니다. 예를 한번 들어보겠습니다. numberOrString이라는 변수는 number 또는 string이 될 것이라고 선언해 두었습니다. 그리고 값도 입력을 해두었습니다. 이렇게 선언을 하면 string 또는 number가 될 수 있지만 값을 넣어두었기 때문에 마우스를 올려보면 더 구체적인 타입으로 유추되는 것을 확인할 수 있습니다. 이것이 내로잉의 가장 기본이 되는 개념입니다. 우리가 타입을 선언했다고 해도 값을 통해서 TypeScript는 어떤 타입이 될지를 정확하게 유추할 수 있습니다. Narrowing의 종류 1) Assignment Narrowing 변수에 값을 할당함으로써 타..