JavaScript 105

프로그래머스 n개 간격의 원소들 JS (for문, push() / _(언더스코어) 사용하지 않는 매개변수나타냄 )

프로그래머스 n개 간격의 원소들 JS 문제 설명 정수 리스트 num_list와 정수 n이 주어질 때, num_list의 첫 번째 원소부터 마지막 원소까지 n개 간격으로 저장되어있는 원소들을 차례로 담은 리스트를 return하도록 solution 함수를 완성해주세요. ✅ 내 코드 function solution(num_list, n) { let list =[] for(let i=0; i index % n === 0); } 이 코드의 2️⃣ 인덱스를 2로 나눠서 0이 되는지를 확인하는 방법을 사용했다. 그러면서 for문 대신 filter를 이용해서 필요한 값만을 뽑아냈다. filter()의 인덱스만을 이용해도 되기 때문에, 첫번째 인자로 _ (언더스코어)를 사용했다. 해당 매개변수를 사용하지 않을때는 언더스..

프로그래머스 옹알이 (1) JS ( replaceAll() / RegExp 정규표현식 공부 )

프로그래머스 옹알이 (1) JS 문제 설명 머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어 붙인) 발음밖에 하지 못합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return하도록 solution 함수를 완성해주세요. ✅ 내 코드 function solution(babbling) { return babbling.map(word => word.replaceAll(/aya|ye|woo|ma/gi, '')).filter(a => a ==='').length } 위의 방법을 생각하고 완성하기 전에 여러가지 방법을 시도했는데 다 안돼서 계속..

프로그래머스 꼬리 문자열 JS ( filter(), includes(),join() / reduce를 사용해서 요소삭제, 문자열 이어붙이기)

프로그래머스 꼬리 문자열 JS 문제 설명 문자열들이 담긴 리스트가 주어졌을 때, 모든 문자열들을 순서대로 합친 문자열을 꼬리 문자열이라고 합니다. 꼬리 문자열을 만들 때 특정 문자열을 포함한 문자열은 제외시키려고 합니다. 예를 들어 문자열 리스트 ["abc", "def", "ghi"]가 있고 문자열 "ef"를 포함한 문자열은 제외하고 꼬리 문자열을 만들면 "abcghi"가 됩니다. 문자열 리스트 str_list와 제외하려는 문자열 ex가 주어질 때, str_list에서 ex를 포함한 문자열을 제외하고 만든 꼬리 문자열을 return하도록 solution 함수를 완성해주세요. ✅ 내 코드 function solution(str_list, ex) { return str_list.filter(a => !a.i..

프로그래머스 접두사인지 확인하기 JS ( startsWith() / +연산자로 Boolean값 숫자로 변환 / indexOf() )

프로그래머스 접두사인지 확인하기 JS 문제 설명 어떤 문자열에 대해서 접두사는 특정 인덱스까지의 문자열을 의미합니다. 예를 들어, "banana"의 모든 접두사는 "b", "ba", "ban", "bana", "banan", "banana"입니다. 문자열 my_string과 is_prefix가 주어질 때, is_prefix가 my_string의 접두사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요. ✅ 내 코드 function solution(my_string, is_prefix) { if (my_string.startsWith(is_prefix)) { return 1; } else { return 0; } } 🙋‍♀️ 내 생각 처음에 문제를 잘못읽어서 조금 헤맸다 ..ㅠ..

프로그래머스 배열에서 문자열 대소문자 변환하기 JS (map(),for문,if문,toUpperCase(),toLowerCase() / reduce() -초기값으로 빈배열사용 )

프로그래머스 배열에서 문자열 대소문자 변환하기 문제 설명 문자열 배열 strArr가 주어집니다. 모든 원소가 알파벳으로만 이루어져 있을 때, 배열에서 홀수번째 인덱스의 문자열은 모든 문자를 대문자로, 짝수번째 인덱스의 문자열은 모든 문자를 소문자로 바꿔서 반환하는 solution 함수를 완성해 주세요. ✅ 내 코드 방법1> map()사용하여 원본유지 function solution (strArr) { return strArr.map((str, i) => { if(i%2 ===0) { return str.toLowerCase() } else { return str.toUpperCase() } }) } toLowerCase()와 toUpperCase()는 전에 여러번 써본 기억이 있어서 바로 strArr에 ..

프로그래머스 배열의 원소만큼 추가하기 JS (중첩for문, push() / map() / reduce(), new Array()- 초기값으로 []빈배열사용 )

프로그래머스 배열의 원소만큼 추가하기 문제 설명 아무 원소도 들어있지 않은 빈 배열 X가 있습니다. 양의 정수 배열 arr가 매개변수로 주어질 때, arr의 앞에서부터 차례대로 원소를 보면서 원소가 a라면 X의 맨 뒤에 a를 a번 추가하는 일을 반복한 뒤의 배열 X를 return 하는 solution 함수를 작성해 주세요. ✅ 내 코드 function solution(arr) { let X = [] for(let i=0; i

프로그래머스 이어붙인수 JS ( filter(), reduce(), String(), Number() )

문제 설명 정수가 담긴 리스트 num_list가 주어집니다. num_list의 홀수만 순서대로 이어 붙인 수와 짝수만 순서대로 이어 붙인 수의 합을 return하도록 solution 함수를 완성해주세요. ✅ 내 코드 function solution(num_list) { let isEven = num_list.filter((a) => a % 2 === 0); let isOdd = num_list.filter((a) => a % 2 === 1); let evenSum = isEven.reduce((acc, cur) => acc + String(cur)); let oddSum = isOdd.reduce((acc, cur) => acc + String(cur)); return Number(evenSum) + N..

프로그래머스 주사위 게임 1 JS ( if문, Math.ab() )

문제 설명 1부터 6까지 숫자가 적힌 주사위가 두 개 있습니다. 두 주사위를 굴렸을 때 나온 숫자를 각각 a, b라고 했을 때 얻는 점수는 다음과 같습니다. a와 b가 모두 홀수라면 a2 + b2 점을 얻습니다. a와 b 중 하나만 홀수라면 2 × (a + b) 점을 얻습니다. a와 b 모두 홀수가 아니라면 |a - b| 점을 얻습니다. 두 정수 a와 b가 매개변수로 주어질 때, 얻는 점수를 return 하는 solution 함수를 작성해 주세요. ✅ 내 코드 function solution(a, b) { if(a%2 ===1 && b%2 ===1) { return a**2 + b**2 } else if((a%2 ===1 && b%2 ===0) || (a%2 ===0 && b%2 ===1)) { ret..

프로그래머스 두 수의 합 JS ( BigInt(), 부동소수점 공부 )

문제 설명 0 이상의 두 정수가 문자열 a, b로 주어질 때, a + b의 값을 문자열로 return 하는 solution 함수를 작성해 주세요. ✅ 내 코드 function solution(a,b){ let toNum = BigInt(a) + BigInt(b); return toNum.toString() } 🙋‍♀️ 내 생각 처음에는 위와 같이 BigInt를 사용해서 풀 생각을 못하고 바로 Number로 바꿔서 풀었다. 코드는 아래와 같다. function solution(a, b) { let toNum = Number(a) + Number(b) return toNum.toString() } 위와 같이 단순히 Number로 바꾸는 메서드를 사용하면, 숫자가 짧을 경우에는 문제가 없지만, 숫자의 길이가 ..