String형도 .length로 길이를 확인할 수 있습니다. 예를 들어 회원가입 시 입력하는 이름, 휴대폰 번호 등을 올바르게 입력했는지 확인할 때 유용하게 활용할 수 있습니다.
if(phoneNumber.length !==11){
alret('휴대폰 번호를 올바르게 입력해주세요!');
}
const name = prompt('성함을 입력해주세요.');
if(name.length === 2){
alret('외자이시군요! 이름이 이쁘네요.');
}else if(name.length === 1){
alert('제대로 입력하셨나요?');
}else{
alert('멋진 이름입니다.');
}
*참고
Number형에는 length 라는 속성이 존재하지 않습니다. 그렇기 때문에, length 속성을 이용하려면 아래와 같이 String형으로 저장해야합니다.
const phoneNumber = "01012349876";
console.log(phoneNumber);
console.log(phoneNumber.length);
indexOf : indexOf 메서드는 특정 문자열이 포함되어있는지 확인하고, 만약 있다면 몇 번 째 순서에 해당 문자열이 있는지 알려 줍니다. 그리고 해당 문자열이 없다면 -1을 반환합니다.
slice : slice 메서드는 이름 그대로, 텍스트를 잘라주는 함수입니다.
slice(잘리는 시작위치, 잘리는 끝위치)
// *잘리는 끝위치의 문구는 반환시 포함되지 않습니다.
위에 메서드를 사용하는 예를 들면 아래 코드와 같다.
let info = 'JavaScript는 프로래밍 언어이다.';
const firstChar = info.indexOf('프로래밍');
// indexOf로 문자열의중에서 '프로래밍'의 위치를 찾아준다.
console.log(info, firstChar);
//JavaScript는 프로래밍 언어이다., 12
//12는 '프로래밍'의 index를 출력한것임
if(firstChar !== -1){
// firstChar가 '프로래밍'이라는 문자가 포함된게 아닌게 아니라면 이라는조건
info = info.slice(0, firstChar) + '프로그래밍' + info.slice(firstChar + 4, info.length);
// slice메서드를 이용하여 문자열 조합
}
console.log(info)
// JavaScript는 프로그래밍 언어이다.
"경기도 성남시 분당구 중앙공원로 53" / "서울특별시 강남구 테헤란로 427 위워크타워"
"경기도 분당구 중앙공원로 53" / "강남구 테헤란로 427 위워크타워"
let address = '경기도 성남시 분당구 중앙공원로 53';
let withoutSi = address.indexOf('성남시');
// '성남시'라는 문자가 있는지 확인하고 index까지 확인
console.log('index : ', withoutSi)
// index : 4
function sliceCityFromAddress(address){
if(withoutSi !== '-1'){
// '성남시'라는 문자가 포함안된게 아니라면 이라는 조건문
return address.slice(0, 4) + address.slice(withoutSi+4, address.length)
// slice메서드로 문자열 편집
}
}
console.log(sliceCityFromAddress(address))
//"경기도 분당구 중앙공원로 53"