문자

문자열 에서 JavaScript

38개의 연습 문제

문자열 소개

_문자열_은 텍스트 데이터를 저장하기 위한 JavaScript의 데이터 타입이에요. 개별 문자를 위한 별도의 데이터 타입은 없어요.

문자열 만들기

텍스트를 작은따옴표나 큰따옴표로 감싸면 문자열 리터럴을 만들어요. Exercism에서는 작은따옴표를 사용해요.

'Hello, World!'
"Hello, World!"

텍스트의 일부 특수 문자 앞에는 백슬래시 \를 붙여야 해요. 자세한 내용은 MDN의 이스케이프 시퀀스를 참고해요.

const text = 'I\'m having fun.\nWhat about you?';
console.log(text);
// => I'm having fun.
// => What about you?

작은따옴표와 큰따옴표 외에도, 텍스트를 백틱으로 감싸서 문자열을 만들 수도 있어요. 이 문법을 사용하면 작은따옴표나 큰따옴표, 심지어 줄바꿈까지 이스케이프할 필요 없이 포함할 수 있어요. 표현식을 삽입할 수도 있는데, 자세한 내용은 템플릿 문자열을 참고해요.

`A multi-line string
with 'single quotes'
and "double quotes"`;

문자의 배열로서의 문자열

문자열은 문자의 배열로 다룰 수 있고, 첫 번째 문자의 인덱스는 0이에요. 대괄호와 가져오고 싶은 글자의 인덱스를 사용해서 문자열의 개별 문자에 접근할 수 있어요. 또는 charAt 메서드도 있어요.

'cat'[1];
// => 'a'

'cat'.charAt(2);
// => 't'

length 속성에 접근하면 문자열의 문자 수를 알 수 있어요.

'cat'.length;
// => 3

문자열 연결과 메서드

문자열을 연결하는 가장 간단한 방법은 덧셈 연산자 +를 사용하는 거예요.

'I like' + ' ' + 'cats.';
// => "I like cats."

문자열은 다양한 편의 메서드를 제공해요. 전체 목록은 MDN의 문자열 메서드 문서를 참고해요. 다음은 자주 사용하는 편의 메서드 몇 가지예요.

문자열은 불변

위의 메서드를 적용해도 원래 문자열은 절대 바뀌지 않아요. 대신 새로운 문자열이 만들어져 반환돼요. JavaScript에서 문자열(그리고 다른 원시 데이터 타입)은 불변이에요. 즉, 위에서 보여 준 대괄호 문법으로 특정 인덱스에 다른 문자를 할당할 수 없다는 뜻이에요(배열에서는 할 수 있듯이요).

const str = 'cat';
str[1] = 'u'; // fails silently
console.log(str);
// => 'cat'
GitHub에서 편집 링크가 새 창이나 탭에서 열려요

문자열 배우기

연습이 잠겨 있어요

문자열 개념을 연습하려면 연습 문제 1개를 더 잠금 해제해요