Replit

홍석현·2022년 10월 19일
0

Assignment
String의 slice() 는 자주 사용 되는 문자열 메소드 중 하나 입니다. 먼저 slice 에 대한 설명을 가볍게 읽어봅시다 👉 slice설명

그 후 sliceCityFromAddress 함수를 구현해 주세요.
sliceCityFromAddress 함수는 address 를 인자로 받습니다.

address 는 주소를 나타내는 string 입니다.

주어진 주소에서 도시를 찾아 삭제하고 새로운 주소를 리턴해 주세요.

도시는 무조건 ‘시’로 끝납니다. 예) “서울특별시”, “성남시”

‘시’는 주소에 한번만 포함되어 있습니다.

예를 들어, 다음과 같은 주소가 주어졌다면

"경기도 성남시 분당구 중앙공원로 53"
다음과 같은 값이 리턴되어야 합니다:

"경기도 분당구 중앙공원로 53"

function sliceCityFromAddress(address) {
  let 시= address.indexOf("시");
  let 빈칸= address.indexOf(" ");
  let result
  
  if(빈칸 !== -1&& 시 !== -1){
    return address.slice(0,빈칸) + address.slice(시+1,address.length)
  }else if( 빈칸 === -1 && 시 !==-1){
    return adddress.slice(시+1,address.length)
  }return result
}

console.log(sliceCityFromAddress("서울특별시 분당구 중앙공원로 53"))
console.log(sliceCityFromAddress("경기도 성남시 분당구 중앙공원로 53"))
module.exports = {sliceCityFromAddress}

서울특별시 분당구 중앙공원로 53
경기도 분당구 중앙공원로 53

이런 답이나온다.

  if(빈칸 !== -1&& 시 !== -1){
    if(빈칸 > 시){
    return address.slice(시+2)
  }
    return address.slice(0,빈칸) + address.slice(시+1,address.length)
  }else if( 빈칸 === -1 && 시 !==-1){
    return adddress.slice(시+1,address.length)
  }return result
}

if(빈칸 > 시){return address.slice(시+2)}을 추가하니
분당구 중앙공원로 53
경기도 분당구 중앙공원로 53
가 나온다.

이렇게되면 else if 밑과 첫 if문이 필요없어진다.

    if(빈칸 > 시){
    return address.slice(시+2)
  }else{
    return address.slice(0,빈칸) + address.slice(시+1,address.length)}
  }

분당구 중앙공원로 53
경기도 분당구 중앙공원로 53

같은 정답이 나온다.

profile
Front-end to Full-stack

0개의 댓글