Develop/JAVASCRIPT
자바스크립트 기초 - 문자열(length, trim, indexOf, lastIndexOf, search, includes, startsWith, endsWith, charAt)
걸어다니는 종합병원
2022. 12. 22. 11:38
반응형
문자열은 String 타입이며 '(싱글 쿼테이션), "(더블 쿼테이션), `(백틱 - 키보드의 탭 위에 있음)으로 문자열을 감싼다.
문자열은 길이, 검색, 추출, 변환, 나누기, 결합 하기 같은 작업이 가능함
const a = 'JavaScript';
const b = "JavaScript";
const c = `JavaScript`;
console.log('a : ', a);
console.log('b : ', b);
console.log('c : ', c);
문자열 내부에서 특수문자 사용시
\' | 싱글 쿼테이션 |
\" | 더블 쿼테이션 |
\` | 백틱 |
\\ | 역슬래시 |
\n | 줄바꿈 |
\r | 되돌리기 |
console.log('싱글 쿼테이션 [\']');
console.log('더블 쿼테이션 [\"]');
console.log('백틱 [\`]');
console.log('역슬래시 [\\]');
console.log('줄바꿈 [\n]');
console.log('되돌리기 [\r]');
length - 문자열 길이 확인
문자열.length | 문자열 길이 | 숫자타입 반환 |
Array.from(문자열).length | 문자열 길이 | 숫자타입 반환 |
const len = 'Javascript'.length;
console.log('문자열 길이 : ',len);
※ 이모티콘과 같은 특수문자는 서러게이트 쌍(Surrogate Pair)이기 때문에 4바이트로 표현하여 Array.from()을 사용
trim - 문자열 앞뒤 공백 제거
문자열 양쪽 끝의 공백(스페이스, 탭, 줄바꿈 문자)을 제거 하며, 문자열 사이의 공백은 제거되지 않음
const trim1 = ' JavaScript ';
const trim2 = 'Javascript\n';
const trim3 = ' Java Script ';
console.log('trim1 : ['+trim1.trim()+']');
console.log('trim2 : ['+trim2.trim()+']');
console.log('trim3 : ['+trim3.trim()+']');
원하는 문자열의 위치 확인 - indexOf, lastIndexOf, search
문자열.indexOf(검색대상문자열,[검색대행인덱스*] | 문자열 시작 인덱스 | 숫자 반환 |
문자열.lastIndexOf(검색대상문자열,[검색대행인덱스*] | 문자열 종료 인덱스 | 숫자 반환 |
문자열.search(정규표현) | 정규 표현 일치 인덱스 | 숫자 반환 |
indexOf는 지정한 문자열의 인덱스 위치를 반환하며, 첫 번쨰 문자 위치가 0부터 시작한다.
문자열을 찾을 수 없는 경우에는 -1이 반환
const myString = 'JavaScript를 공부하자';
//지정 문자열이 존재 할 때
const a1 = myString.indexOf('JavaScript');
console.log(a1);
const a2 = myString.indexOf('공부하자');
console.log(a2);
const a3 = myString.lastIndexOf('a');
console.log(a3);
//지정 문자열이 존재하지 않을 떄
const b1 = myString.indexOf('HTML');
console.log(b1);
const b2 = myString.indexOf('j'); // 대소문자 구분
console.log(b2);
조금 더 체계화된 검색은 정표 표현식을 사용해서 검색.
const myString = 'JavaScript를 공부하자';
const s1 = myString.search(/JavasSript/);
console.log(s1);
const s2 = myString.search(/Script/);
console.log(s2);
const s3 = myString.search(/a/);
console.log(s3);
const s4 = myString.search(/HTML/);
console.log(s4);
문자열 검색 - 부분 검색
지정한 문자열의 포함 여부를 확인하고 싶을 때
입력폼의 부적절한 문자를 체크하고 싶을 떄
메소드 | 의미 | 반환 | ||
대상문자열.includes(검색대상문자열, [검색시작인덱스]*) | 문자열 포함 여부 확인 | true, false | ||
대상문자열.startsWith(검색대상문자열, [검색시작인덱스]*) | 문자열 포함 여부 확인 | true, false | ||
대상문자열.endsWith(검색대상문자열, [검색시작인덱스]*) | 문자열 포함 여부 확인 | true, false |
const myString = 'JavaScript를 공부하자';
const a1 = myString.includes('JavaScript');
console.log(a1);
const a2 = myString.startsWith('공부하자');
console.log(a2);
const a3 = myString.endsWith('공부하자');
console.log(a3);
메소드 | 의미 | 반환 |
문자열.charAt( [인덱스]*) | 지정한 인덱스의 문자를 추출 | 문자 |
const myString = 'JavaScript';
console.log(myString.charAt(3));
console.log(myString.charAt()); // 인수 생략시 기본값은 인덱스 0의 위치를 반환
반응형