본문 바로가기
반응형

전체 글299

[Java] PECS(Producer-Extends, Consumer-Super) 공식 Generics PECS(Producer-Extends, Consumer-Super), 생산자-extends, 소비자-super * 제네릭이란? 2023.02.13 - [언어/JAVA] - [Java] 제네릭(Generic) [Java] 제네릭(Generic) 제네릭 = 데이터 타입을 일반화한다, 클래스나 메소드에서 사용하는 내부의 타입을 외부에서 지정해주는 기법 제네릭 클래스 클래스 선언에 타입 매개변수가 쓰이면 이를 제네릭 클래스라 한다 kfdd6630.tistory.com PECS란? Producer-Extends, Consumer-Super의 줄임말이다. Collection으로부터 와일드카드 타입의 객체를 생성 및 만들면(produce) extends를 사용한다. 가지고 있는 객체를 Collect.. 2023. 2. 14.
영어, 숫자, 특수 문자, 글자 수 제한 정규식 모음 많이 쓰는 정규식 모음 const regExBook = { ONLY_ENG: /^[a-zA-Z]*$/, // 영어만 있는가? ONLY_NUM: /^[0-9]*$/, // 숫자만 있는가? ONLY_ENG_NUM: /^[a-zA-Z0-9]*$/, //영어와 숫자만 있는가? ENG: /[a-zA-Z]/gi, // 영어가 들어가 있는가? NUM: /[0-9]/gi, // 숫자가 들어가 있는가? ENG_NUM: /[a-zA-Z0-9]/gi, //영어, 숫자가 들어가 있는가? EX_MARK: /[\{\}\[\]\/?.,;:|\)*~`!^\-_+@\#$%&\\\=\(\'\"]/gi, // 특수문자가 들어가 있는가? UNDER_TEN: /^[\w\Wㄱ-ㅎㅏ-ㅣ가-힣]{1,9}$/, // 10글자 이하인가? }; 2023. 2. 13.
[Java] 와일드카드 <?> 와일드카드의 종류에는 1. 비경계, 2. 한정적(상한,하한 경계) 와일드 카드가 있다. 비경계 와일드카드(Unbounded Wildcards) - ?의 형태로 사용한다. - 기본적으로 와일드카드는 정해지지 않은 unknown type이다. - 예를 들어, List 이다. - 모든 타입이 인자가 될 수 있다. - 상한 경계, 하한 경계 등 경계가 존재하지 않는다. public static void printList(List 비경계 와일드 카드 - Get List에서 Get한 원소는 Object 타입이다. - 비경계 와일드 카드의 원소는 어떤 타입도 될 수 있다. - 어떤 타입이 와도 읽을 수 있도록, 모든 타입의 공통 조상인 Object로 받는다. public static void get(List list.. 2023. 2. 13.
[Java] 제네릭(Generic) 제네릭 = 데이터 타입을 일반화한다, 클래스나 메소드에서 사용하는 내부의 타입을 외부에서 지정해주는 기법 제네릭 클래스 클래스 선언에 타입 매개변수가 쓰이면 이를 제네릭 클래스라 한다. 기본형태 class useBook {} 예제) class useBook { List users = new ArrayList(); public void add(T user) { users.add(user); } } 선언) UserBook magicianBook = new UserBook(); 사용하는 이유: 1. 런타임에서 잡히는 에러(자료형에 대한 검증)가 컴파일에서 잡히기 때문에 시간을 절약할 수 있다. 2. 컴파일 타임에 자료형의 오류에 대한 검증을 수행하여 런타임에 자료형에 안전한 코드를 실행한다. 3. 반환값에 대.. 2023. 2. 13.
[React] 뒤로가기 방지 [React, Next.js] 뒤로가기(이전 페이지 가기) 방지 const preventGoBackHandler = () => { history.go(1); }; useEffect(() => { window.addEventListener("popstate", preventGoBackHandler); return () => { window.removeEventListener("popstate", preventGoBackHandler); }; }, []); history.go를 이용해 뒤로가기를 막는 효과이다. * 사실 뒤로가기 자체를 막는 로직은 아니고 뒤로가고 앞으로 오는 로직이지만 UX적으로는 현재 페이지에 머물러 있는다. hisyoty.go 2023.02.12 - [분류 전체보기] - [js] his.. 2023. 2. 12.
[js] history.back(), history.forward(), history.go() history.back()=뒤로가기, history.forward()=앞으로 가기, history.go()=특정위치로 가기 History.back()history.back();1. history.back() 메소드는 브라우저가 세션 기록의 바로 뒤 페이지로 이동하도록 지시한다.2. history.go(-1)와 같다.3. 이전 페이지가 없는 경우 아무것도 하지 않는다.4. 이 메소드는asynchronous(비동기)로 동작한다.5. popstate 이벤트 처리기를 통해 탐색 완료 시점을 알 수 있다. 다음 예제는 클릭했을 때 뒤로 가는 버튼을 생성한다.HTML뒤로 가기jsdocument.getElementById('goBack').addEventListener('click', () => { window.h.. 2023. 2. 12.
[js] 문자열 공백 제거 replace() 함수 replace() 함수와 정규식을 이용한 여러가지 문자열 공백 제거 let 변수 = " a b c "; 변수.replace('바꾸고싶은 이전 값', '바뀌는 이후 값'); x라는 앞, 중간, 뒤에 " "공백이 2자리씩 총 6자리의 공백이 있는 문자열이 있다고 하자. let x = ' aa aaaa '; console.log(x, x.length); 출력값 aa aaaa 12 x는 길이는 6개의 a와 공백 6개로 이루어진 12자리로 이루어진 문자이다. 첫 번째로 공백 하나 제거 = .replace(" ", "") /** * 첫 번째 공백제거 * @param str * @returns */ const trimOne = (str) => { const trimStr = str.replace(" ", ""); r.. 2023. 2. 11.
[js] Object(json)에서 key로 value찾기, value로 key 찾기 Object(json)에서 key로 value찾기=Object[key], value로 key 찾기=Object.keys() 활용 Object(json)에서 key값으로 value값 찾기 const objectO = { a:1, b:2, c:3, d:1, }; console.log(objectO["a"]) 출력값 1 Object(json)에서 value값으로 key값 찾기 /** * json에서 value로 key 값 찾기 * @param object * @param value * @returns keys[] */ const objectO = { a:1, b:2, c:3, d:1, }; const getKeyByValue = (object, value) => { const result = []; Objec.. 2023. 2. 10.
[NestJS] 타입 종류_Swagger NestJS 다양한 타입_Swagger에 표시하기 단순 타입 (number, string 등) @ApiProperty({ type: Number, }) age: number; @ApiProperty({ type: String, }) name: string; Arrays(배열) 속성이 배열인 경우 아래와 같이 배열 유형을 수동으로 지정해야 한다. @ApiProperty({ type: [String] }) skills: string[]; 배열의 첫 번째 요소로 유형을 포함하거나(위에 표시된 대로) isArray속성을 true로 설정한다. Circular dependencies(순환 종속성) 클래스 간에 순환 종속성이 있는 경우 지연 함수를 사용하여 SwaggerModule유형 정보를 제공한다. @ApiPro.. 2023. 2. 10.
[js] Object(json)에서 key, value값 추출 Object(json)에서 key값 리턴 = Object.keys() , value값 리턴 = Object.values() Object.keys() 메소드는 주어진 객체의 속성 이름들을 일반적인 반복문과 동일한 순서로 순회되는 열거할 수 있는 배열로 반환한다. Object.values()메소드는 전달된 파라미터 객체가 가지는 (열거 가능한) 속성의 값들로 이루어진 배열을 리턴한다. 이 배열은 for...in 구문과 동일한 순서를 가진다. * 단 순서만 동일하지, for...in반복문은 프로토타입 체인 또한 열거한다는 점에서 차이가 있다. Object.keys() 메소드를 이용한 json객체에서 keys추출 const objectO = { c: 3, b: 2, a: 1, }; console.log(Obje.. 2023. 2. 9.
반응형