본문 바로가기
Frontend/JavaScript

21. String 문자열

by yerin.dev 2023. 12. 22.

String

String 생성자 함수에 인수를 전달하지 않고 new 연산자와 함께 호출하면 [[StringData]] 내부 슬롯에 빈 문자열을 할당한 String 래퍼 객체를 생성한다.

 

String 래퍼 객체는 배열과 마찬가지로 length 프로퍼티와 인덱스를 나타내는 숫자 형식의 문자열을 프로퍼티 키로, 각 문자를 프로퍼티 값으로 갖는 유사 배열 객체이면서 이터러블이다.

 

String.prototype.indexOf : 인수로 전달받은 문자열을 검색하여 첫 인덱스를 반환. 검색에 실패하면 -1 반환. 2번째 인수로 검색을 시작할 인덱스를 전달할 수 있다.

String.prototype.search : 인수로 전달받은 정규표현식과 매치하는 문자열을 검색하여 일치하는 문자열의 인덱스 반환.

String.prototype.includes

String.prototype.startsWith : 2번째 인수로 검색을 시작할 인덱스를 전달할 수 있다.

String.prototype.endsWith : 2번째 인수로 검색할 문자열의 길이를 전달할 수 있다.

String.prototype.charAt (String.prototype.charCodeAt과 String.prototype.codePointAt과 유사)

String.prototype.substring : 대상 문자열에서 첫 번째 인수로 전달받은 인덱스에 위치하는 문자부터 두 번째 인수로 전달받은 인덱스에 위치하는 문자의 바로 이전 문자까지의 부분 문자열을 반환.

 

첫번째 인수와 두번째 인수의 경우

  • 첫 번째 인수 > 두 번째 인수인 경우 두 인수는 교환된다.
  • 인수 < 0 또는 NaN인 경우 0으로 취급된다.
  • 인수 > 문자열의 길이인 경우 인수는 str.length 로 취급된다.

String.prototype.indexOf 메서드와 함께 사용하면 특정 문자열을 기준으로 앞 뒤에 위치한 부분 문자열을 취득할 수 있다.

String.prototype.slice : substring 메서드와 동일하게 동작. 음수인 인수를 전달하면 대상 문자열의 가장 뒤에서부터 시작하여 문자열을 잘라내어 반환.

String.prototype.toUpperCase

String.prototype.toLowerCase

String.prototype.trim : 대상 문자열 앞뒤에 공백 문자가 있을 경우 이를 제거한 문자열을 반환

String.prototype.trimStart

String.prototype.trimEnd

String.prototype.repeat : 인수로 전달받은 정수만큼 반복해 연결한 새로운 문자열을 반환.

String.prototype.replace : 대상 문자열에서 첫 번째 인수로 전달받은 문자열 또는 정규표현식을 검색하여 두 번째 인수로 전달한 문자열로 치환한 문자열을 반환한다. 특수한 교체 패턴을 사용할 수 있다.

String.prototype.split : 대상 문자열에서 첫 번째 인수로 전달한 문자열 또는 정규 표현식을 검색하여 문자열을 구분한 후 분리된 각 문자열로 이루어진 배열을 반환. 두번째 인수로 배열의 길이를 지정할 수 있다.

'Frontend > JavaScript' 카테고리의 다른 글

23. 스프레드 문법과 디스트럭처링  (0) 2023.12.22
22. Symbol 과 이터러블  (1) 2023.12.22
20. Number, Math, Date, RegExp  (1) 2023.12.21
19. 배열  (1) 2023.12.21
18. 화살표 함수  (0) 2023.12.21