[Lv.0] 숫자 찾기

01수정·2022년 11월 22일
0
post-thumbnail
post-custom-banner

<입문 100문제> Day 17 - 문자열, 수학, 조건문, 배열, 사칙연산

문제


풀이

str.indexOf(searchValue[, fromIndex])
str.search(regexp)
str.lastIndexOf(searchValue[, fromIndex])

(1) X : 없는 경우 -1 은 맞는데 index 가 계속 1 만큼 적게 나왔다.

function solution(num, k) {
    return (''+num).indexOf(k)
}

(2) O : num 을 문자열로 만들기 위해 덧붙인 '' 을 ' ' 로 만들어 index 가 자동으로 1 만큼 많이 나오게 했다.

function solution(num, k) {
    return (' '+num).indexOf(k)
  	// 사실은 아래와 같이 하는게 더 올바른 코드인 것 같다
  	// return (''+num).indexOf(k) === -1 ? -1 : (''+num).indexOf(k) + 1
}

해답

function solution(num, k) {
  const index = [...('' + num)].findIndex(n => +n === k);
  return index === -1 ? -1 : index + 1;
}

참고자료

profile
새싹 FE 개발자
post-custom-banner

0개의 댓글