본문 바로가기

분류 전체보기55

즉시 실행 함수 즉시 실행 함수, IIFE(Immediately-involked-function): 즉시 실행되는 함수 주로 함수를 선언하자마자 바로 호출을 할 때 사용 즉시 실행 함수를 사용이유 const a=1; function ong(x){ document.write(x+1); } ong(a); ong함수가 호출되면, 문서에 매개변수 x에 1을 더한 값을 씀 함수 표현은 함수를 정의하고, 변수에 함수를 저장하고 실행하는 과정인 반면, 즉시 실행함수는 함수를 정의하고 바로 실행 → 즉, 함수를 생성하고 따로 함수를 호출하는 것이 아니라, 함수를 정의하자마자 바로 함수를 실행하는 방식 1. 초기화 코드 부분에 사용 : 변수를 전역으로 선언하는 것을 피하기 위하여(코드 충돌없이 구현 가능) ex) var initText.. 2023. 1. 6.
제네릭 제네릭(Generic) 클래스나 함수, 인터페이스를 다양한 타입으로 재사용 가능 선언 할 때는 타입 파라미터만 작성하고, 생성하는 시점에 사용하는 타입 결정 function getSize(arr:number[] | string[]):number{ return arr.length; } const arr1=[1,2,3]; getSize(arr1); const arr2=["a","b","c"]; getSize(arr2); //매개변수의 타입만 바꾸고 동일한 함수를 사용하고 싶으면, 함수 오버로드 또는 유니온 타입 사용하기 //계속 타입이 눌어나는 경우 제네릭 사용 //사용: T는 어떤 타입을 전달받아서 해당 함수에서 사용 할 수 있도록 함 function getSize2(arr:T[]):number{ retu.. 2023. 1. 3.
클래스 클래스 타입스크립트에서는 멤버 변수는 미리 선언해주어야 함 class Car{ color:string; //타입스크립트에서는 멤버변수는 미리 선언해주어야 함 constructor(color:string){ this.color=color; } start(){ console.log("start"); } } const bnw=new Car("red"); 멤버 변수 미리 선언하지 않는 방법 -> 접근 제한자 또는 readonly키워드 이용 class Car2{ constructor(public color:string){ this.color=color; } start(){ console.log("start"); } } class Car3{ constructor(readonly color:string){ this... 2023. 1. 3.
리터럴, 유니온/교차 타입 리터럴 타입(Literal Types) const: 변하지 않는 값 선언 할 때 let: 변할 수 있는 값 선언 할 때 문자열 리터럴 타입: 정해진 string 값을 가진 값 const userName1="Bob"; //문자열 리터럴 타입: 정해진 string값을 가진 값 let userName2="Tom"; let userName3:string | number="Tom"; //가질 수 있는 타입 명시 하기 type Job="police"|"developer" |"teacher"; interface User{ name:string; job:Job; } const user: User = { name:"Bob", job:"developer", }; 유니온 타입(Union Types) |(세로 줄) inter.. 2023. 1. 3.