일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 원리
- API
- 백준
- axios
- Dive
- EventListener
- LeetCode
- BOJ
- deep
- programmers
- Java
- 개발
- memory
- 상태 끌어올리기
- State
- javascript
- react
- 프로젝트
- DoM
- 유용한 사이트
- virtual Dom
- 요청
- 상태
- 프로그래머스
- 꿀팁
- Hook
- 가상 DOM
Archives
- Today
- Total
탄탄한 기본기!
javaScript - String 본문
표준 빌트인 객체인 String은 원시 타입인 문자열을 다룰 때 유용한 프로퍼티와 메서드를 제공한다.
1. String 생성자 함수
String 객체는 생성자 함수 객체이기 때문에 new 연산자와 함께 호출하여 String 인스턴스를 생성할 수 있다. 하지만 보통 String 이 필요할 때는 문자열 리터럴로 바로 생성해 사용하는 경우가 일반적이다.
그리고 만약 new 연산자를 제외하고 String 함수를 사용할 경우, String 객체가 아닌 원시 값을 반환한다.
const kim = new String('kim'); // 객체
const park = String('park')
const lee = 'lee'; // 원시 값 (리터럴)
length 프로퍼티
String 객체는 length 프로퍼티를 가지고 있고, 문자열의 문자 개수를 값으로 가지고 있다.
'Hello'.length; // -> 5
2. String 메서드
String 객체가 가지고 있는 메서드는 개발할 때 매우 많이 사용되기 때문에 중요하다. String 객체의 메서드는 원본 String을 변경시키지 않고 언제나 새로운 문자열을 생성하여 반환한다는 점을 알아야 한다.
아래는 자주, 혹은 유용하게 사용될 수 있는 String 메서드들을 모아서 정리해놓은 것이다.
- String.prototype.indexOf: 문자열을 검색하여 첫 번째 인덱스를 반환하며 검색에 실패하면 -1을 반환한다.
- String.prototype.search: 정규 표현식과 매치하는 문자열을 검색하여 일치하는 문자열의 인덱스를 반환하며 검색에 실패하면 -1을 반환한다.
- String.prototype.includes: 특정 문자열이(인수) 포함되어 있는지 확인하여 그 결과를 true 또는 false로 반환한다.
- String.prototype.startsWith/endsWith: 특정 문자열로 시작하는지/끝이 나는지 확인하여 true/false로 반환한다.
- String.prototype.charAt: 전달받은 인덱스에 위치한 문자를 검색하여 반환한다.
- String.prototype.substring: 첫 번째 인수부터 두 번째 인수(전)까지의 문자열을 반환한다.
- String.prototype.slice: substring 메서드와 동일하게 동작하지만 slice는 음수인 인수를 전달할 수 있다.
- String.prototype.toUpperCase/toLowerCase: 대문자/소문자로 변경하여 반환한다.
- String.prototype.trim: 앞/뒤 공백을 모두 제거한 문자열을 반환한다.
- String.prototype.repeat: 대상 문자열을 인수로 전달받은 정수만큼 반복해 연결한 새로운 문자열을 반환한다.
- String.prototype.replace: 첫 번째 인수로 전달받은 정규표현식/문자열을 두 번째 인수로 변환하여 반환한다.
- String.prototype.split: 문자열 또는 정규 표현식을 검색하여 문자열을 구분한 후 분리된 각 문자열로 이루어진 배열을 반환한다.
'개인 공부 > JS (자바스크립트)' 카테고리의 다른 글
javaScript - Symbol 타입 (0) | 2021.06.01 |
---|---|
Node.js와 Jest 실습 (0) | 2021.06.01 |
javaScript - Date (0) | 2021.05.30 |
javaScript - Math (0) | 2021.05.29 |
javaScript - Number (0) | 2021.05.29 |