"", '' 안에 텍스트가 들어가면 string 형입니다.
string 대소문자 바꾸기
let lastName = 'Yeri Kim';
let upperLastName = lastName.toUpperCase();
let lowerLastName = lastName.toLowerCase();
console.log(lastName); // Yeri Kim
console.log(upperLastName); // YERI KIM
console.log(lowerLastName); // yeri kim
toUpperCase() 와 toLowerCase()를 활용
문자 길이
if (phoneNumber.length !== 10 && phoneNumber.length !== 11) {
alert("폰 번호 제대로 입력하셨나요?");
}
핸드폰 번호는 주로 10자리나 11자리므로 둘 중 하나가 아닐 경우 '폰 번호 제대로 입력하셨나요?' 알람
길이는 '매개변수.length' 로 구합니다.
0으로 시작하는 숫자 표현식?
let phoneNumber = 01012349876;
console.log(phoneNumber);
console.log(phoneNumber.length);
0 으로 시작하는 숫자 표현식은 없습니다.
핸드폰 번호를 온전히 표시하고 lengh 속성을 이용하려면 let phoneNumber = "01012349876" 와 같이 string 형으로 저장해야합니다.
문자열 찾기
let info = "JavaScript는 프로래밍 언어이다."; // info 문구에서 '프로래밍'이 시작되는 index는 12
let firstChar = info.indexOf("프로래밍"); // '프로래밍'이라는 문구 찾기 -> 없으면 -1, 있으면 12 반환
console.log(info, firstChar); // 12
if (firstChar !== -1) { // 만약 결과물이 -1 아니라면
info = info.slice(0, firstChar) + "프로그래밍" + info.slice(firstChar+4, info.length);
} // 오타수정 코드
// 막간 slice 개념
양 끝 범위가 있을 때 첫번째 자리는 포함하고 뒤에 자리는 미포함한다
양 끝 범위가 없을 때 미포함
const arr = ['a', 'b', 'c', 'd'];
const arr1 = arr.slice(1, 3); // [ 'b', 'c' ] 잘라쓰기 1포함 3 미포함
const arr2 = arr.slice(1); // ['b', 'c', 'd'] 자르기 1미포함
const arr3 = arr.slice(-3, -1); // ['b', 'c'] 잘라쓰기 -3포함 -1 미포함
console.log(info);
replit 문제
내 코드 👇
👇 풀면서 중심점을 두었던 점
1. '시'가 들어간 인덱스 번호를 찾고 그 값을 중심으로 slice 문을 써서 이어 붙이면 된다
2. 중요한 건 '서울특별시' 와 경기도 '성남시' 인데 위치가 다르므로 if 문을 써서 두갤 나누어 주어야 한다.
3. slice(포함, 미포함)을 생각해서 넣기
city 변수에 address.indexOf("시)를 넣어주었다. 다음 빈 변수인 result를 선언했다.
현재 city는 서울특별시 or 경기도 성남시 의 인덱스 번호가 들어있는 변수인데 이를 기준으로 뒤에서부터 0으로 가는 반복문을 썼다.
반복문 안에 if를 넣어 city 인덱스보다 작은 인덱스들을 확인했고
'경기도v성남시' 가운데 있는 띄어쓰기를 만난다면
result address.slice(0, i) + address.slice(city + 1, address.length
'서울특별시' 같이 주소에 "시" 하나만 들어있는 주소를 만난다면
if (address[city - i] === address[city]) // "시"가 작은 인덱스에 더 있는지
result address.slice(city + 2, address.length) // slice 속성은 (포함, 미포함) 해서 자르므로 "시+ 띄어쓰기" 인덱스를 포함하기 위해 city+2를 해주었다.
'TIL' 카테고리의 다른 글
object 1 (0) | 2022.07.22 |
---|---|
js 변수 종류와 TDZ, hoisting (0) | 2022.07.21 |
검색창 만들기 (html, css) (0) | 2022.07.21 |
js에서의 Scope (0) | 2022.07.20 |
semantic web과 semantic tag (0) | 2022.07.20 |
댓글