전체 글

주니어 개발자 고군분투기(+ 일상 기록)
🔍 문제 - 문자열 my_string이 매개변수로 주어지고, my_string에서 중복된 문자를 제거한 후 하나의 문자만 남긴 문자열을 return ⌨️ 입출력 예시 🙋‍♀️ 내가 푼 방식 - 드디어 모던자바스크립트 Deep dive 책에서 봤던 Set을 사용해보았다!! - my_string 값을 배열로 받아 각 요소의 중복을 제거 해준 후 - join('') 메소드로 배열의 모든 요소를 연결해 하나의 문자열로 만들어주어 반환한다. function solution(my_string) { var answer = new Set([...my_string]); let answer_arr = [...answer].join(""); return answer_arr; } 참고자료: 프로그래머스 코딩테스트 https:..
🔍 문제 - 문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return하기 ⌨️ 입출력 예시 🙋‍♀️ 내가 푼 방식 - 숫자만 출력은 어떻게 할지 검색해보다가 만난 정규식 - 숫자만 추출해주는 정규식으로 정리후 str 변수에 넣어줬다. function solution(my_string) { var answer = []; let regex = /[^0-9]/g; let str = my_string.replace(regex, ""); console.log(str);// 12392 return answer; } solution("hi12392"); - 입출력 예시에서는 배열 값이기 때문에 .split() 메소드로 배열 안에 넣어준 다음 .s..
1. 우리 팀의 저장소 가져오기 - 우리 팀에서 쓰기로 한 github 저장소를 clone 해온다. # 원하는 루트에서 git clone 팀 저장소 클론 주소 2. 팀 저장소 연결하기 - git 초기화 해주기 git init git remote add origin 팀 저장소 주소 또는 팀 내 master 브랜치 이름 git remote add origin main # 또는 git remote add origin https://github.com/choisooyoung-dev/git-test.git # 잘 됐는지 확인하기 git remote -v 3. 내 브랜치 생성하기 - checkout으로 브랜치를 생성하기 - 내 브랜치에서 코드를 짜고 편집해야 main 브랜치에 영향을 주지 않고, 각 팀원들과 충돌하..
🔍 문제 - 가위는 2 바위는 0 보는 5로 표현 - 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return ⌨️ 입출력 예시 🙋‍♀️ 내가 푼 방식 - if 문으로 하나 하나 해결하려다가 reverse 처럼 메소드 활용을 많이 해야겠다 싶어 검색해봤다. - 각각의 가위, 바위, 보가 이기는 숫자는 정해져있기 때문에 배열을 이용해보면 어떨까 싶어 이것 저것 해보다 실패.. - forEach와 map 차이를 모르고 있었던게 실수의 이유 -> 공부하자.. function solution(rsp) { const rspWin = { 2 : 0, 0 : 5, 5 : 2 }; return [...rsp]...
🔍문제 - 문자열을 뒤집어서 반환하기 ⌨️ 입출력 예시 🙋‍♀️ 내가 푼 방식 - 배열 뒤집기 문제 풀고 나서 바로 푼거라 reverse 메소드 바로 썼는데 문자열은 배열이 아님!! - 배열 안에 글자 하나 하나를 요소로 넣고 reverse 메소드에 넣고 반환해야겠다 생각함. - 반환할때 배열로 반환이 아닌 뒤집힌 문자열로 반환해야해서 검색해봤더니 join() 이라는 메소드 발견!! function solution(my_string) { var answer = ""; let splitStr = my_string.split(""); let strArr = splitStr.reverse(); answer = strArr.join(""); return answer; } 참고자료: 프로그래머스 코딩테스트 연습 ..
🔍 문제 - 배열 각 요소들의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성 ⌨️ 입출력 예시 🙋‍♀️ 내가 푼 방식 - for문을 증가 방식이 아닌 감소방식으로 하다가 검색해서 알게된 reverse 메소드를 사용했다. - 배열의 마지막 요소를 잘라 push 로 answer 배열에 넣었었는데 [ [5], [3], ... , [1] ] 이런식으로 들어가서 당황했다.. function solution(num_list) { var answer = []; answer = num_list.reverse(); return answer; } 참고자료: 프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/courses/30/lessons/120..
🔍 문제 - 입력한 배열의 요소들을 두 배한 배열 출력하기 ⌨️ 입출력 예시 🙋‍♀️ 내가 푼 방식 - 배열의 각 요소들을 2배한다. -> number[i] * 2, for문 - answer이라는 배열에 2배한 요소들을 넣어준다. -> answer.push(number[i] * 2) function solution(numbers) { var answer = []; for (let i = 0; i < numbers.length; i++) { answer.push(numbers[i] * 2); } return answer; } 참고자료: 프로그래머스 코딩테스트 연습 문제 https://school.programmers.co.kr/learn/courses/30/lessons/120809
🌎 Map - 키와 값의 쌍으로 이루어진 객체이다. 구분 객체 Map 객체 키로 사용할 수 있는 값 문자열 또는 심벌 값 객체 포함한 모든 값 이터러블 X O 요소 개수 확인 Object.keys(obj).length map.size 1. Map 객체 생성 - Map 생성자 함수로 생성한다. const map = new Map(); console.log(map); - 이터러블을 인수로 전달받아 Map 객체를 생성한다. - 이 때 인수로 전달되는 이터러블은 키와 값의 쌍으로 이루어진 요소로 구성되어야 한다. const map1 = new Map([ ['key1', 'value1'], ['key2', 'value2'] ]); console.log(map1);// Map(2) ... const map2 = n..
✨ Set - set 객체는 중복되지 않는 유일한 값들의 집합 - 배열과 유사하지만 1) 동일한 값 중복 X 2) 요소 순서에 의미 없음. 3) 인덱스 접근 불가 - 수학적 집합을 구현하기 위한 자료구조 - 교집합, 차집합, 여집합, 등을 구현할 수 있다. 1. Set 생성 - Set 생성자 함수로 생성한다. const set = new Set(); - Set 생성자 함수는 이터러블을 인수로 전달받아 Set 객체를 생성한다. - 중복된 값은 요소로 저장되지 않는다. - 배열에서 중복된 요소를 제거할 수 있다. const newArr = arr => [new Set(arr)]; console.log(newArr([2, 1, 2, 3, 4, 3, 4]));// [2, 1, 3, 4] 2. 요소 개수 확인 -..
문제 설명 - 정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성해주세요. 입출력 예시 - num1 -> 10, num2 -> 5, return 값 -> 2 🙋‍♀️ 내가 푼 풀이 function solution(num1, num2) { let answer = 0; answer = Math.floor(num1 / num2); return answer; } ✏️ 배운 것 Math.floor() - 내림 메소드 Math.ceil() - 올림 메소드 Math.round() - 반올림 메소드 코딩테스트 문제 출처[프로그래머스]: https://school.programmers.co.kr/learn/courses/30/lessons/1..
sooyoung.c.dev
개발 기록