대파양파애비
'Programming Language' 카테고리의 글 목록 (2 Page)

Backend dev?

Programming Language/Javascript

[Javascript] split() 지정 구분기호로 문자열을 배열로 분할

오늘은 문자열을 원하는 지정구분 기호로 배열로 분할하는 법에 대해서 알아보자. 케이스는 이러하다. 관련 DB에 sort_depth라는 컬럼이 존재하는데 해당 값들은 string으로 이루어져 있다. 나는 사진에 아랫쪽에 있는 "118,121,122,123" 의 크기(길이?)를 구해 4라는 값을 얻고 싶었다. 그럼 우선 배열로 변환한 다음, length()를 사용하여 크기를 구할 계획이다. 여기서 배열로 변환할때 " , " 이 콤마 단위로 구분을 해서 넣어 줘야되는데 이때 split()를 사용하면 간단하다. split()이란? 지정된 구분 기호에 따라 문자열을 하위 문자열 배열로 분할할 수 있는 내장 JavaScript 문자열 메서드이다. 사용법은 간단하다. const str = "118,121,122,12..

Programming Language/Javascript

[Javascript] "some()" 배열의 객체에 원하는 값이 있으면 True 반환

Javascript에서 배열의 요소를 순차적으로 순회하면서 특정 조건을 만족하는지 체크하는 some()함수를 다룰 것이다. some함수의 특징은 - true를 만족하는 요소를 찾을 때까지 callback 함수를 실행한다. - 만족하는 요소가 없거나 빈 배열인 경우 false를 반환한다. - 처리하는 요소의 범위는 callback 함수의 첫 호출 전에 설정된다. likeTotal이라는 배열안에 객체의 "user_uuid"라는 key값에, "user"라는 value값이 있으면 true를 반환 하고 싶었다. 관련 코드를 확인해 보자. const likeTotal = [ { user_uuid: '1234', likes: 10 }, { user_uuid: '5678', likes: 5 }, { user_uuid:..

Programming Language/Typescript

[Typescript] class-transformer 끝장내기

오늘은 Typescript 환경에서 class-transformer에 대해서 포스팅 할 것이다. 회사에 테크니컬 리더님께서 꼭 class-transformer에 대해서 제대로 알고 가야지 된다고 하셔서 오늘 끝장을 내보려한다. 포스팅을 위해서 많이 찾아봤는데 이미 NestJS에서 개발을 하면서 DTO와 plainToInstance를 사용하고 있었는데 이게 class-transformer인줄도 몰랐다... 머쓱 우선, class-transformer를 사용하는 이유는 크게 7가지가 있다. 1. 데이터 유효성 검사 class-transformer와 class-validator를 함께 사용하여 TypeScript클래스의 객체에 대한 데이터 유효성 검사를 수행하는 경우, 일반적으로 DTO(Data Transfe..

Programming Language/Javascript

[Javascript] find(), filter() 두 배열에서 일치하는값 찾기

오늘은 Javascript에서 자주쓰이는 find()와 filter() 사용법에 대해 알아보고 응용해서 두 배열에서 서로 일치하는 Value 값 찾기를 할 것이다. 해당 코드를 통해서 find()를 먼저 알아보자. 변수 "findMeComment"는 "meCommentList"라는 배열의 객체의 uuid의 value과 controller에서 넘겨준 Param(uuid)와 일치하는 객체를 뽑는 역할을 한다. meCommentList = [ {uuid:123123}, {uuid:234234}, {uuid:333333}, ... ] find()메소드는 변수에 저장된 객체 배열을 검색하는 역할을 하고있다. 해당코드에서 find()메소드는 콜백함수를 인수로 사용하며, 이 함수는 값을 반환할때까지 배열의 각 요소에..

Programming Language/Javascript

[Javascript] 객체(object) 속성이나 문자열의 개수 구하는법

오늘은 객체의 속성이나 문자열의 개수 구하는 법에 대해 포스팅 하려고 한다. ".length" 는 배열에서 밖에 사용을 못해서 객체나 문자열에서는 사용하지 못한다. dto.parent_sort_depth 를 콘솔찍어보면 3,4,5,6,7 이라는 문자열로 나온다. 이 문자열의 길이를 구하려면 어떻게 해야할까? Object.keys().length; // 괄호안에 dto.parent_sort_depth 를 넣어준다. Object.keys(obj).length를 하게 되면, 해당 문자열의 길이, 크기를 리턴받을 수 있다. 따라서 Object.keys(dto.parent_sort_depth).length를 해보면 5가 리턴 된다. 문자열 뿐만 아니라 객체(Object)에도 똑같이 사용할 수 있다. blanc이라..

Programming Language/Javascript

[Javascript] Array map() 함수, 배열에 특정값만 추출해 새로운 배열 만들기

오늘은 JavaScript map() 함수의 기능중 한개에 대해 간략하게 포스팅 해보려고 한다. 우선 코드를 보자. - service부 일단 코드를 간략하게 설명하면 dto를 파라미터로 받아서 해당 repository에서 검색후 결과가 없을경우 에러처리를 해주는 부분이다. 콘솔찍은 결과도 확인 해보자. 이렇게 배열로 해당 결과값이 나오게 된다. 하지만 나는 이 결과값에서 keyword_uuid만 뽑아서 사용을 해야되는 상황이 생겼다. 이럴때..! map() 함수를 사용하면 된다. - service부 변수를 선언하고 타입은 배열로 지정을 해준다. 앞서 변수로 선언한 keywordFollowList에 .map() 함수를 사용해서 원하는 값을 추출해서 새로운 배열로 만들 수 있다. 나는 keyword_uuid..

Programming Language/Javascript

[ES6+] ES6에서의 순회와 이터러블/이터레이터 프로토콜

# 이터러블/이터레이터 프로토콜 @이터러블 -이터레이터를 리턴하는 [Symbol.iterator]() 를 가진 값 - 이터러블 프로토콜을 준수한 객체. - 배열, 문자열, Map, Set은 이터러블 객체이다. - 이터러블 객체는 for...of문 뿐만 아니라 스프레드 연산, 구조분해 할당이 가능하다. Array 에 arr[Symbol.iterator] = null 넣으면 콘솔에 "Array는 Symbol.iterator가 아니다" 라고 나옴 @이터러블 프로토콜 - Well-know Symbol(JS가 기본 제공하는 빌트인 심볼 값)인 Symbol.iterator를 프로퍼티 키로 사용한 메소드를 직접 구현하거나 프로토타입 체인을 통해 상속받은 Symbol.iterator 메소드를 호출하면 이터레이터 프로토..