[ 프로그래머스 ] 숨어있는 숫자의 덧셈(2) ( JS )

2024. 8. 8. 16:33·Algorithm/Javascript

https://school.programmers.co.kr/learn/courses/30/lessons/120864#

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 


[ 문제 ]

[ 내 풀이 ]

function solution(my_string) {

    // 정규식을 사용하여 하나 이상의 연속된 숫자만 찾음
    // .match(/\d+/g) = 문자열내의 모든패턴을 감시하여 숫자를 찾음
    let arr = my_string.match(/\d+/g)
    
    // .match는 주어진 조건으로 찾은 값이 없는경우 null을 반환
    // 그러므로 null이라면 숫자가 없으므로 바로 0 반환
    if(arr!==null){
    	// 찾은 문자열타입의 숫자를 Number타입으로 변환
        // reduce를 사용하여 값을 모두 더하여 리턴
        return arr.map(Number).reduce((a,c)=>a+c,0);
    }
    else{
        return 0;
    }
}

 

[ 다른 풀이 ]

문제풀이를 통해 배운내용

function solution(my_string) {
  // \D의 의미는 "숫자가 아닌 것" 입니다.
  // 숫자가 아닌 값을 기준으로 split하기대문에..
  // match를 사용했을때처럼 null인지 판별하지 않아도 됩니다.

  // reduce의 cur값에 바로 Number를 씌워 Number타입으로 변환하였고
  // 이를 acc에 축적하였습니다는 점이 제 코드와 달랐습니다. ( 개선점 )
  return my_string.split(/\D+/).reduce((acc, cur) => acc + Number(cur), 0);
}
반응형
저작자표시 비영리 변경금지 (새창열림)

'Algorithm > Javascript' 카테고리의 다른 글

[ 프로그래머스 ] 인덱스 바꾸기 ( JS )  (0) 2024.07.25
[ 프로그래머스 ] 영어가 싫어요 ( JS )  (1) 2024.07.24
[ 프로그래머스 ] 대문자와 소문자 ( JS )  (7) 2024.07.23
[ 프로그래머스 ] 암호 해독 ( JS )  (2) 2024.07.23
[ 프로그래머스 ] 369게임 ( JS )  (0) 2024.07.21
'Algorithm/Javascript' 카테고리의 다른 글
  • [ 프로그래머스 ] 인덱스 바꾸기 ( JS )
  • [ 프로그래머스 ] 영어가 싫어요 ( JS )
  • [ 프로그래머스 ] 대문자와 소문자 ( JS )
  • [ 프로그래머스 ] 암호 해독 ( JS )
heee1
heee1
FE 개발자를 희망하는 임희원 입니다.
  • heee1
    heee1.blog
    heee1
  • 전체
    오늘
    어제
    • 분류 전체보기 (69)
      • Front-end (1)
        • Javascript (4)
        • Typescript (1)
        • React (0)
        • Next.js (1)
        • Tool (1)
        • Git (1)
        • Prettier (0)
        • Test-Framework (1)
        • Vercel (1)
      • 교육 (28)
        • 항해99 : 웹개발 종합반 18기 (14)
        • 프로젝트 캠프 : React 2기 (5)
        • 코드잇 스프린트 : 단기심화 5기 (9)
      • Algorithm (29)
        • Javascript (24)
        • Python (5)
      • 코드 보관함 (1)
        • 배치스크립트 ( .bat ) (1)
  • 블로그 메뉴

    • 홈
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    자바스크립트
    티스토리챌린지
    tailwindcss
    til
    next.js
    백준
    테스트 프레임워크
    오블완
    JavaScript
    모킹
    jest
    Python
    react-spring
    스프린트
    node.js
    css animation
    Baekjoon
    코드잇
    항해99
    speed insights
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
heee1
[ 프로그래머스 ] 숨어있는 숫자의 덧셈(2) ( JS )
상단으로

티스토리툴바