일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 항해99
- java
- 타입스크립트
- it
- https
- MYSQL
- CORS
- reduce
- JavaScript
- Joi
- TypeScript
- 메소드
- 자바스크립트
- nomadcoder
- Nodejs
- 생활코딩
- npm
- 프로그래머스
- elb
- ubuntu
- mongoose
- nginx
- JWT
- 노마드코더
- 조건문
- mongodb
- wil
- AWS
- Load Balancer
- Node.js
- Today
- Total
목록JavaScript (28)
V-logue
대충 이런 문제다. function solution(arr, divisor) { var answer = arr.filter((value) => {return value % divisor === 0}) answer.length === 0 ? answer.push(-1) : answer.sort((a,b) => a - b) return answer; } 다 풀진 못했고, answer = arr.filter((value) => {return value % divisor === 0}) 이 부분과 answer.length === 0 ? answer.push(-1) : answer.sort((a,b) => a - b) 이 부분까지 생각해냈는데 못 풀었다. 너무 해매다 보니 정말 쉬운길을 다 생각해내고도 빙빙 돌아가..
대충 이런 문제다. function solution(n) { var answer = ''; for (i = 0; i < n; i++) { answer += i % 2 === 0 ? "수" : "박" } return answer; } 풀이는 무척 간단한데, 삼항 연산자를 사용하면 쉽게 문제를 해결할 수 있다. i값에 바로 삼항연산자를 걸어버리는게 아니라, 따로 조건을 만들고 i에 그 조건을 대입하려고 하다보니 생각보다는 시간이 오래걸렸다.
대충 이런 문제인데, 나는 match 함수를 이용하여 풀었다. Match 함수란 , 더보기 str.match(regexp) 라는 용법으로 사용하며, 특정 문자열 내의 단어를 찾고자 할 때 사용한다. 또한 , 단어만 찾을 수 있는 것이 아니라 정규식을 이용해 특정 패턴을 분석할 때도 사용할 수 있다. var str = 'pYYYYYY' str.match('p'); // p가 있기 때문에 p를 출력한다. var regular = "Hi, Hello, Hi, Bye" var regExp = /Hi/gi; regular2 = regular.matcg(regExp) // 결과값 [Hi, Hi] 이런식으로 대충 사용할 수 있다. 나는, function solution(s){ var a = s.toLowerCase(..
문제의 설명을 보자면, 뒷 4자리를 제외한 나머지를 *로 바꿔라~ 라는 말이다. function solution(phone_number) { var answer = ''; if ( 4
function solution(arr) { var answer = arr.reduce( (a, b) => a + b,0); { } return answer/ arr.length; } reduce함수를 이용한 평균을 구하는 문제이다. arr값이 1부터 100까지라는 제한이 있지만, 크게 신경쓰지 않고 reduce로 누적값을 내준뒤 그 값을 배열의 길이만큼 나눠줬다.
대충 이런 문제다. function solution(a,b) { var week = ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT']; var date = new Date(`2016,${a},${b}`); let day = date.getDay(); return week[day]; } 나는 date 객체로 이 문제를 풀었는데, 다 풀고나니 date객체가 다 알아서 해주는데 이건 알고리즘 문제를 푸는게 아니라, 객체 메소드 연습을 하는거라는 글을 보게됐다. 뭐가 맞는건지는 잘 모르겠지만, 일단 풀었으니 설명을 하자면 먼저 date객체에서 new Date( )를 이용하여 날짜와 시간을 표현할 수 있는데 다음과 같다 new Date() new Date(year, mont..
function solution(arr1, arr2) { for (let i = 0; i < arr1.length; i++) { for (let j = 0; j< arr1[i].length; j++) { arr1[i][j] += arr2[i][j] } } return arr1; } for문을 이용해서 풀면되는데, arr1[i][j]라는 느낌의 키워드가 참으로 오랫동안 생각나지 않았다. 그래서 한참을 찾아보던 중 정답인줄 모르고 봤던 게시물에서 for (let i = 0; i < arr1.length; i++) 라는 문장만 보고 바로 감을 잡게됐다. 먼저 arr1[i]값을 먼저 잡아주고, j값이 i와 동등하게 ++되면 안되기 때문에 j < arr1[i].length라고 값을 주었다. arr1[i][j]값에..
function solution(numbers) { return 45 - numbers.reduce((acc, curr) => acc + curr); } 별로 어렵지 않았던 문제인데, 처음에 무척이나 해맸던게 0 ≤ numbers의 모든 원소 ≤ 9 라는 문구에 사로잡혀서 리턴값으로 결과를 반환하지 않고 저것과 아주아주 비슷한 문장을 조금씩 바꿔가면서 변수를 줬기 때문에 너무나 오랜시간이 걸렸다. 그러다가, 설마해서 넣어본게 정답으로 인정됐는데, 조금 어이가 없었다. 0부터 9까지의 원소중 없는 숫자를 더하는건 그냥 0부터 9까지 더해준 값인 45에서 배열값을 모두 더한 acc +cur을 빼주면된다.