September 15, 2021

자바스크립트엔 글자 하나만 저장할 수 있는 별도의 자료형이 없습니다. 텍스트 형식의 데이터는 길이에 상관없이 문자열 형태로 저장됩니다.

자바스크립트에서 문자열은 페이지 인코딩 방식과 상관없이 항상 UTF-16 형식을 따릅니다.

특수 기호

'줄 바꿈 문자(newline character)'라 불리는 특수기호 \\n을 사용하면 작은따옴표나 큰따옴표로도 여러 줄 문자열을 만들 수 있습니다.

let guestList = "손님:\\n * John\\n * Pete\\n * Mary";

alert(guestList); // 손님 리스트를 여러 줄에 걸쳐 작성함

따옴표를 이용해 만든 여러 줄 문자열과 백틱을 이용해 만든 여러 줄 문자열은 표현 방식만 다를 뿐 차이가 없습니다.

let str1 = "Hello\\nWorld"; // '줄 바꿈 기호'를 사용해 두 줄짜리 문자열을 만듦

// 백틱과 일반적인 줄 바꿈 방법(엔터)을 사용해 두 줄짜리 문자열을 만듦
let str2 = `Hello
World`;

alert(str1 == str2); // true

자바스크립트엔 줄 바꿈 문자를 비롯한 다양한 ‘특수’ 문자들이 있습니다.

문자열의 길이

length 프로퍼티엔 문자열의 길이가 저장됩니다.

alert( `My\\n`.length ); // 3

\\n은 ‘특수 문자’ 하나로 취급되기 때문에 My\\n의 길이는 3입니다.

Untitled

includes, startsWith, endsWith

비교적 근래에 나온 메서드인 str.includes(substr, pos)는 str에 부분 문자열 substr이 있는지에 따라 true나 false를 반환합니다.

부분 문자열의 위치 정보는 필요하지 않고 포함 여부만 알고 싶을 때 적합한 메서드입니다.