본문 바로가기
JavaScript

[JavaScript] String

by eddypark 2023. 10. 26.

- 원시 타입인 문자열을 다룰 때 유용한 프로퍼티와 메서드를 제공하는 레퍼 객체이다.

- 생성자 함수 호출 : var a = new String('wangi');

- 원시 타입 문자열 : let y = 'wangi';

- 일반적으로 원시 타입 문자열을 사용한다.

- new를 사용하지 않으면 문자열 리터럴을 반환한다.

(1) String Property

- String.length : 문자열 내의 문자 개수를 반환한다.

var a = 'parkwangi';
console.log(a.length); // 9

(2) String Method

- .charAt() : 인수로 전달한 index에 해당하는 위치의 문자를 반환 범위를 벗어날 경우 빈 문자열을 반환한다.

- .concat() : 인수로 전달한 1개 이상의 문자열과 연결하여 새로운 문자열을 반환한다.

- .indexOf() : 인수로 전달한 문자 또는 문자열을 검색하여 처음 발견되는 곳의 index를 반환한다. 발견하지 못할 경우 -1을 반환한다.

- .lastindexOf() : 인수로 전달한 문자 또는 문자열을 검색하여 마지막 발견되는 곳의 index를 반환한다. 발견하지 못할 경우 -1을 반환한다. 두 번째 인덱스가 주어지면 두 번째 인덱스 위치에서 역방향으로 검색한다.

- .replace() : 첫 번째 인수로 전달된 문자열을 검색하여 두 번째 인수로 전달된 문자열로 변경, 원본은 변경되지 않고 유지된다. 검색된 문자열이 여러 개일 경우 첫 번째로 검색된 문자열만 대체된다.

- .split() : 첫 번째 인수로 전달된 문자열을 검색하여 문자열을 구분한 후 분리된 각 문자열로 이루어진 배열을 반환, 원본은 변경되지 않는다.

- .substring() : 첫 번째 인수와 두 번째 인수 전까지의 문자를 모두 반환한다. 첫 번째 인수가 클 경우 두 인수는 교환되며 두 번째 인수가 생략되면 문자열 끝까지 반환한다.

인수가 0보다 작거나 NaN이면 0으로 취급한다.

- .slice() : substring과 동일하지만 slice는 음수 인수를 전달할 수 있다. 인자가 음수면 뒤에서부터 인덱스를 찾는다.

- .toLowerCase() : 모든 문자를 소문자로 변경한다.

- .toUpperCase() : 모든 문자를 대문자로 변경한다.

- .trim() : 문자열의 양쪽 끝의 공백 문자를 제거한다. (앞쪽만 .trimStart(), 뒤쪽만 .trimEnd())

- .repeat() : 인수만큼 반복, 인수가 0이거나 음수면 range error

- .includes() : 인수로 전달한 문자열이 포함되어 있는지의 여부를 boolean으로 반환한다. 두 번째 인수는 검색 위치이다.

var a = 'park wan gi';

console.log(a.charAt(0));            // p
console.log(a.charAt(9));            // g
console.log(a.concat(' eddy'));      // park wan gi eddy
console.log(a.indexOf('k'));         // 3
console.log(a.indexOf('c'));         // -1
console.log(a.lastIndexOf('a'));     // 6
console.log(a.lastIndexOf('a', 4));  // 1
console.log(a.replace('a', 'x'));    // pxrk wan gi
console.log(a.split(' '));           // [ 'park', 'wan', 'gi' ]
console.log(a.substring(1, 4));      // ark
console.log(a.substring(4, 1));      // ark
console.log(a.substring(-5));        // park wan gi
console.log(a.slice(-5));            // an gi

var b = '   Park Wan Gi   ';
console.log(b.toLowerCase());        //   park wan gi   
console.log(b.toUpperCase());        //   PARK WAN GI   
console.log(b.trim());               //Park Wan Gi
console.log(b.repeat(2));            //   Park Wan Gi      Park Wan Gi   
console.log(b.includes('W'));        // true

'JavaScript' 카테고리의 다른 글

[JavaScript] Higher order function  (1) 2023.10.30
[JavaScript] Array  (1) 2023.10.26
[JavaScript] 정규표현식  (1) 2023.10.24
[JavaScript] Date  (0) 2023.10.24
[JavaScript] Math  (0) 2023.10.20