String 생성자 함수
const strObj = new String();
console.log(strObj);
- String 생성자 함수에 인수를 전달하지 않고 new 연산자와 함께 호출하면 래퍼 객체 생성
const strObj = new String('Lee');
console.log(strObj);
- 인수로 문자열을 전달하면 문자열을 할당한 string 레퍼 객체를 생성한다
- 문자열은 원시 값이므로 변경 할 수 없다. 바꾸더라도 에러가 나지 않는다.
length 프로퍼티
'Hello'.length;
'안녕하세요!'.length;
String 메서드
string.prototype.indexOf
const str = 'Hello World';
str.indexOf('l');
str.indexOf('or');
str.indexOf('x');
str.indexOf('l', 3);
- 인수로 전달받은 문자열을 검색하여 첫 번째 인덱스를 반환한다. 실패하면 -1을 반환한다.
- 2번째 인수로 검색을 시작할 인덱스를 전달 할 수 있다.
string.prototype.includes
const str = 'Hello world';
str.startsWith('He');
str.startsWith('x');
str.startsWith(' ', 5);
- 인수로 전달받은 문자열로 시작하는지 확인하여 그 결과를 true false로 반환, 2번째 인수로 시작할 인덱스를 전달 할 수 있다.
string.prototype.substring
const str = 'Hello World';
str.substring(1, 4);
- 첫 번째 인수로 전달받은 인덱스에 위치하는 문자부터 두 번째 인수로 전달받은 인덱스에 위치하는 문자의 바로 이전 문자까지의 문자열을 반환한다
string.prototype.slice
const str = 'hello world';
str.substring(0, 5);
str.slice(0, 5);
str.substring(2);
str.slice(2);
str.substring(-5);
str.slice(-5);
- substing 메서드와 동일하게 동작하지만 음수인 인수를 전달 할 수 있다는 차이점이 있다.
string.prototype.trim
const str = ' foo ';
str.trim();
- 대상 문자열 앞뒤에 공백 문자가 있을 경우 이를 제거한 문자열을 반환한다.
string.prototype.replace
const str = 'Hello world';
str.replace('world', 'Lee');
- 대상 문자열에서 첫 번째 인수로 전달받은 문자열을 검색하여 두 번째 인수로 전달한 문자열로 치환한다.