전체 글110 [ 프로그래머스 ] n개 간격의 원소들 JS 문제 풀이1) filter를 사용하여 num_list의 인덱스를 n으로 나눴을때 떨어지는 인덱스만 반환한다. 결과function solution(num_list, n) { var answer = []; return num_list.filter((_,idx)=>idx%n==0);}여기서는 인덱스만 가져오고자 요소의 변수는 _로 지정하였다. filter를 사용하면서 요소만 가져오는 것이 아니라 요소의 인덱스도 가져오는 법을 알고 싶었다. 그렇게 생각을 하다가 이번 문제를 풀면서 궁금증의 해답을 얻게 되었다. 바로 filter((_,idx)) => 이런 식으로 요소 다음에 인덱스 변수를 정해서 쓸 수 있다는 사실이었다. filter()element : 배열의 요소index : 요소의 인덱스.. 2024. 5. 28. [ 프로그래머스 ] 제일 작은 수 제거하기 문제 풀이1. splice()를 이용하여 제일 작은 수를 찾아 제거를 해준다이때 splice()안에 제일 작은 수의 인덱스 하나를 제거하기 위해 indexOf()와 Math.min()을 사용한다.2. 그 후 arr의 길이가 0이면(빈 배열) [-1]을 리턴하고 그렇지 않으면 arr을 리턴해준다. 결과function solution(arr) { var answer = arr.splice(arr.indexOf(Math.min(...arr)),1); return arr.length === 0 ? [-1] : arr;} 처음에 Math.min(arr)이라고 코드를 친 후 실행을 시켜봤더니 실행이 되지 않았다.그 다음 Math.min(...arr)로 코드를 수정했더니 실행 성공이 떴다. ...이 Mat.. 2024. 5. 20. [ 프로그래머스 ] 간단한 식 계산하기 문제 풀이1. binomial을 분해 할당하여 split()으로 나눈다- js는 배열의 요소를 변수에 바로 할당 할 수 있다let [a,op,b] = binomial.split(' ')2. 삼항 연산자 이용하기- op가 '+'일때 a+b- op가 '-'일때 a-b를 반환하고 아니면 a*b로 반환한다. 결과function solution(binomial) { let [a, op, b] = binomial.split(' '); return (op === '+') ? parseInt(a) + parseInt(b) : (op === '-') ? a-b : a*b;} 변수에 binomial의 요소를 바로 할당시키지 않았을때는 각각의 요소를 어떻게 가져와야할 지 고민이었는데 분해 할당을 사용하여 문제에.. 2024. 5. 18. [ 프로그래머스 ] 세 개의 구분 문제 풀이1. split()으로 'a', 'b', 'c'를 기준으로 myStr을 문자열 배열로 나눈 후 그 값만 filter()로 가져온다( 공백 제거 )2. 삼항 연산자를 사용하여 두 구분자 사이에 다른 문자가 없을 경우 ["EMPTY"]를 가져오고 그렇지 않으면 split()으로 나눈 배열을 가져온다. 결과function solution(myStr) { var answer = myStr.split(/['a'|'b'|'c']/).filter((x)=>x); return answer.length === 0 ? ["EMPTY"] : answer;} 평소 split()을 사용할 때는 한 개를 기준으로 문자열 배열로 나누었는데 이번 문제를 통해 다양한 조건을 기준으로 배열을 나누는 법을 알게 되었다.. 2024. 5. 17. 이전 1 2 3 4 5 6 7 8 ··· 28 다음