JS repl.it 29. array methods

김형석·2022년 4월 27일
1

WECODE

목록 보기
5/33

Assignment

두 문제 모두 map 메서드와 arrow function을 사용해주세요.

1. moreThan100 함수를 구현해 주세요.

  • 숫자로 구성된 배열을 인자로 받습니다.
  • 100 보다 크거나 같으면, true 를
  • 100 보다 작으면 false 로 요소를 변경하여, 새로운 배열을 return 해주세요.
  • 예를 들어,
nums(input)가
[100, 9, 30, 7]
이라면
return은
[true, false, false, false]

내 코드

const moreThan100 = nums => {
  let arr = []
  nums.map((num)=>{
    if( num >= 100 ){
      arr.push(true)
    }else{
      arr.push(false)
    }
  })
  return arr;
}

replit문제는 과제 제출 문제위주로 올리려고 했는데, 제출 문제가 많지 않아 저녁에 풀었던 29번 문제를 올리려고 한다. 아침에 풀었던 건 풀이를 기억 못해서 다시 풀어야되니 패스

replit29 - 1번 문제는 replit 16번 문제랑 비슷하다 아니 더 쉽다. 그냥 push()로 넣어버리자
역시 바로 초록불

2. formatDate 함수를 구현해 주세요.

  • 날짜가 담긴 배열을 인자로 받습니다.
  • 날짜의 data type은 string이며, 보내는 날짜 타입은 'YYYY-MM-DD' 입니다.
  • 해당 날짜의 형식을 'YYYY년 MM월 DD일' 로 바꿔서, 새로운 배열을 return 해주세요.
  • 예를 들어,
dates(input)가
['2019-03-21', '2019-04-21', '2019-05-21']
이라면
return은
['2019년 03월 21일', '2019년 04월 21일', '2019년 05월 21일']

내 코드

const formatDate = dates => {
  let arr = []
  dates.forEach(date=>{
    let a = date.replace('-','년 ')
    a = a.replace('-','월 ');
    a = a + '일'
    arr.push(a)
  })
  return arr;
}

2번이 어려웠다.
하나의 문자열에 '-''년', '월', '일'로 바꿔야 한다니... 이런거 안해봤는데?
일단 문자열을 다른 문자로 바꾸는 함수를 써본 적이 없는듯 한데 기억 안나면 없는거다.
구글링은 마지막 자존심이기 때문에 바로 구글링을 해보았다.
역시 구글은 짱이었다.

replace()함수를 사용하여 바꾸면 된다고 한다. 하지만 바로 다음 문제가 있었다. 하나의 문자열에서 여러개는 어떻게 바꿀까?
그 순간 그냥 하나씩 바꾸면 되겠지 라는 생각이 들었고, 변수 a에다가 그냥 다 넣어버렸다.

replace()함수 사용법

str.replace(regexp | substr, newSubstr | function)
매개변수(Parameter)
1. regexp | substr
정규식 객체 또는 문자열로 치환하기 위해 찾는 파라미터
2. newString | function
첫 번째 파라미터를 대신할 문자열 또는 함수

profile
블로그 이사 : https://hengxi.tistory.com

0개의 댓글