[TS] 타입 좁히기
TIL
타입 좁히기 (Type Narrowing)조건문 등을 이용해 넓은 타입에서 좁은 타입으로 타입을 상황에 따라 좁히는 방법을 말한다.function func(value: number | string){ value.Fixed(); // ❌ value.toUpperCase(); // ❌}위 코드에서 value는 number 또는 string 타입일 수 있기 때문에, toFixed()(number 메서드)와 toUpperCase()(string 메서드)를 바로 사용할 수 없다. 따라서 다음과 같이 조건문을 이용해 value의 타입을 보장해줘야 한다.function func(value: number | string){ if (typeof value === "number"){ console.log(v..
[TS] 타입 단언
TIL
타입 단언이란값 as 타입을 이용하면 특정 값을 원하는 타입으로 단언할 수 있다.type Person = { name: string; age: number;};let person: Person = {};person.name = "woodstock";person.age = 345;위와 같이 변수 person은 Person 타입으로 정의되었지만 초기화 할 때에는 빈 객체를 넣어두고 싶다고 가정할 경우, 타입스크립트는 이를 허용하지 않는다.Person 타입은 name과 age 프로퍼티를 필수로 요구하지만, 빈 객체 {}에는 이 속성들이 없기 때문에 타입 오류가 발생하는 것이다. 이럴 땐 다음과 같이 빈 객체를 Person 타입이라고 단언해주면 된다.이제 타입스크립트는 빈 객체를 Person 타입으로 인식하..
웹페이지를 조작하는 DOM
TIL
웹이란웹이란 인터넷에 연결된 사용자들이 서로의 정보를 공유할 수 있는 공간을 의미한다.웹에서 HTML로 작성된 페이지를 웹 페이지라고 하며, 이 웹 페이지들이 여러개 모여있는 집합을 웹 사이트라고 부르는데 웹 사이트는 보통 HTML, CSS, Javascript로 이루어져 있다.웹 사이트의 구성HTML (Hyper Text Markup Language)브라우저에게 웹 페이지의 요소들이 어떻게 구성되어있는지를 알려주는 역할을 한다. CSS (Cascading Style Sheet)웹 페이지의 요소들을 꾸며주는 역할을 한다. JavaSCript웹 페이지의 요소들을 생성, 삭제, 변형하는 역할을 한다. 그렇다면, 자바스크립트는 어떻게 HTML로 작성된 웹 요소에 접근해 웹 페이지를 동적으로 만들고 변형시킬 수..