[자료구조_String] JavaScript 문자열 (1)

gigi·2023년 4월 10일
0

문자열 접근

.charAt(index)는 0부터 시작하는 인덱스를 입력 값으로 받고 문자열의 해당 인덱스 위치에 있는 문자를 반환한다.

'dog'.charAt(1); // "o"를 반환한다.

문자열(여러 문자들) 접근을 위해 지정된 인덱스 사이의 문자들을 반환하는 .substring(startIndex, endIndex)를 사용한다.

'YouTube'.substring(1,2); // 'o'를 반환한다.
'YouTube'.substring(3,7); // 'Tube'를 반환한다.

두번째 매개변수(endIndex)를 전달하지않으면 지정된 시작 위치부터 끝까지의 모든 문자 값들을 반환한다.

'YouTube'.substring(1); // 'ouTube'를 반환한다.

문자열 비교

대부분의 프로그래밍 언어에는 문자열을 비교할 수 있는 함수가 존재한다. 자바스크립트에서는 <, > 연산자를 사용해 쉽게 수행 할 수 있다.

let a = 'a';
let b = 'b';

console.log(a < b); // true

길이가 다른 두 문자열을 비교한다면 문자열의 시작부터 비교하기 시작해 더 짧은 길이의 문자열 길이만큼까지만 비교한다.

let a = 'add';
let b = 'b';

console.log(a < b); // true
let a = 'add';
let b = 'bb';

console.log(a < b); // false

'a'와 'b'를 비교한다음 'd'와 'b'를 비교한다. 'bb'의 모든 문자를 비교했기 때문에 비교 처리는 중단된다.


문자열 검색

문자열 내에 특정 문자열을 찾기 위해 .indexOf(searchValue [ , fromIndex ])를 사용한다. 검색 하고자 하는 문자열을 매개변수로 받는다. 선택적으로 검색 시작 인덱스를 지정하는 매개변수도 받는다.
.indexOf 함수는 일치하는 문자열의 위치를 반환한다. 발견하지 못한 경우 -1이 반환된다.

'Red Dragon'.indexOf('Red'); // 0 반환
'Red Dragon'.indexOf('RedScale'); // -1 반환
'Red Dragon'.indexOf('Dragon', 0); // 4 반환
'Red Dragon'.indexOf('Dragon', 4); // 4 반환
'Red Dragon'.indexOf('', 9); // 9 반환

문자열 내에 특정 문자들이 몇번 등장하는지 셀 수 있다.

const str = "He's my king from this day until his last day";
let count = 0;
let pos = str.indexOf('a');

while(pos !== -1) {
  count++;
  pos = str.indexOf('a', pos + 1);
}

console.log(count); // 3 반환

마지막으로 startsWith은 문자열이 특정 입력으로 시작하면 true(불리언)를 반환하고 endsWith은 문자열이 특정 입력으로 끝나면 true를 반환한다.

'Red Dragon'.startsWith('Red'); // true
'Red Dragon'.endsWith('Dragon'); // true
'Red Dragon'.startsWith('Dragon'); // false
'Red Dragon'.endsWith('Red'); // false

0개의 댓글