본문 바로가기
반응형

전체 글130

연산자를 이용한 타입 정의_유니온, 인터섹션 union type function logMessage( value:any) { console.log(value) } logMessage('hello') logMessage(100) logMessage(false) any를 사용하면 어떤 타입이건 넣을 수 있다. 하지만 이렇게 사용하면 타입을 사용하는 의미를 잃게 된다. function logMessage( value:string | number) { console.log(value) } logMessage('hello') logMessage(100) || or연산자를 썼을 때의 파이프를 하나 추가해준다. 문자열과 숫자 모두 동일하게 받아서 사용할 수 있게 된다. 장점 타입 가드: 특정 타입으로 타입의 범위를 좁혀나가는 과정(필터링시켜줌) 타입 구분 후 .. 2022. 12. 6.
call, apply, bind call, apply, bind 함수 호출 방식과 상관없이 this를 지정할 수 있다. call `func.call(thisArg[, arg1[, arg2[, ...]]])` 모든 함수에서 사용할 수 있고 this를 특정값으로 지정할 수 있다. - thisArg: 함수를 호출할 때 사용되어지는 this - arg1, arg2... : 함수가 호출되어야 하는 인수를 말한다. 쉽게 얘기하자면 this는 첫 번째 , 나머지 두 번째 부터는 해당 함수의 매개변수로서의 사용 [call을 사용해서 this 지정하기] //함수에서 this는 window를 가리킨다. const mike = { name: 'mike' } const Tom = { name: 'Tom' } function showTishName() { c.. 2022. 12. 6.
타입스크립트 interface 아래 예문에서 함수는 object[]를 타입이다. 매개변수도 타입을 정의해줬는데, 함수 내부에서 파라미터의 속성의 타입이 없다는 에러를 발견했을 때의 오류는 어떻게 해결해야 할까? parameter의 타입이 object일 때 let todoItems: object[]; function completeTodo(index:number, todo:object):void { todo.done = true; todoItems.splice(index, 1, todo); } todo.done의 부분 done이 빨간 밑줄이 생기는데 속성의 타입이 없다고 한다. 이럴때는 객체의 형태를 구체적으로 타입을 정의해줘야 한다. let todoItems: {{id:number, title: string, done: boolean.. 2022. 12. 4.
ts any, void - tsconfing.json에서 noImplicitAny는 true로 변경 - index.ts에 가면 타입이 할당되지 않은 부분은 빨간 밑줄이 생긴다. any string, number, array... 등 모든 타입을 통칭해서 쓸 수 있다. any는 js원래 성질처럼 실행하는 시점에서 타입을 할당해준다. 하지만 any보다는 최대한 구체적인 타입을 넣는것을 추천! void 함수의 반환타입 (리턴)이 없다고 할 때 명시적으로 void를 지정해준다. 2022. 12. 3.
728x90
반응형