Javascrip string은 문자열이다.
문자열의 길이로 회원가입을 받을 때 이름에 10자가 넘어갔는지 체크하거나 핸드폰 번호의 유의미한 입력값을 체크할 때 유용하게 사용된다.
if(phoneNumber.length !== 10 && phoneNumber.length !== 11) {
alert("폰 번호 제대로 입력하셨나요?")
}
또한 문자열을 찾아서 욕설이 포함된 댓글 등을 미연에 방지할 수 있다.
▪sliceCityFromAddress 함수는 address 를 인자로 받습니다.
▪address 는 주소를 나타내는 string 입니다.
▪주어진 주소가 어느 도시 인지를 찾아 해당 주소에서 도시 부분만 삭제한 새로운 주소를 리턴해 주세요.
▪도시는 무조건 "시" 로 끝납니다. 예를 들어, "서울시".
▪"도" 와 "시" 는 주소에 한번 밖에 포함되어 있지 않습니다.
▪예를 들어, 다음과 같은 주소가 주어졌다면"경기도 성남시 분당구 중앙공원로 53"
다음과 같은 값이 리턴되어야 합니다:
"경기도 분당구 중앙공원로 53"
funcition sliceCityFromAddress(address) {
let city = address.indesOf('시');
let sliceCity = address.slice(0, city-2) + address.slice(city+2, address.length);
return sliceCity;
}
원래 코드의 문제점은 성남시, 수원시 등 'xx시'로 3글자 짜리는 괜찮지만, 서울특별시 처럼 3글자 이상의 글자는 출력하지 못한다.
function sliceCityFromAddress(address) {
let blank = address.indexOf(" ");
let city = address.indexOf('시');
if(city > blank) {
return address = address.slice(0, city-2) + address.slice(city+2, address.length);
} else {
return address = address.slice(city+2, address.length);
}
return address;
}
console.log(sliceCityFromAddress("서울특별시 분당구 중앙공원로 53"))
let blank = address.indexOf(" ");
조건문
1) "" blank가 "시" 앞에 있을 때, 2글자 삭제
if(city > blank) {
return address = address.slice(0, city-2) + address.slice(city+2, address.length);
2) "시"앞에 공백이 없을 때에는 "시" 이후의 글자를 모두 내보내기
else {
return address = address.slice(city+2, address.length);
}
후기
예시에 대해 한번이라도 손으로 작성해보았으면 좋겠다는 생각을 했다. 내가 하려고 하는 코딩과 그 결과물이 어떤 것인지 고민을 하고 진행해야겠다는 생각을 했다.