본문 바로가기
TIL

js string

by 은지:) 2022. 7. 21.
728x90
반응형

 

 

 

 

"", '' 안에 텍스트가 들어가면 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를 해주었다.

 

 

 

 

 

 

 

728x90
반응형

'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

댓글