원본: 자바스크립트 문자열 길이
String 객체의 length 속성은 문자열의 문자 수를 리턴합니다.
Table of Contents
문자열 길이 length 문법
length 속성의 문법 구문은 다음과 같습니다:
str.length
여기서 str은 String 객체입니다.
문자열 길이 length 리턴 값
length 속성의 리턴 값은 문자열의 문자 수를 리턴합니다.
String.length 속성은 UTF-16 문자열 포맷에 따라 문자 수를 계산합니다.
일부 희귀한 문자는 두 개의 코드 단위로 표현되는 경우가 있습니다.
화면상으로는 하나의 문자로 보이지만 사실 코드 두 개의 결합이므로 length 속성은 이 문자를 2로 계산하게됩니다.
예제 1: length 속성 사용
let string1 = "JavaScript";
let len = string1.length;
console.log(len); // 10
위의 예제를 개발자 도구에서 간단히 실행해 볼 수 있습니다. 이제 각 코드 라인이 어떤 의미인지 알아보겠습니다.
먼저, 첫 번째 줄에서 string1 이라는 변수에 “JavaScript”라는 문자열을 정의했습니다.
그 다음 줄에서 문자열 객체 string1에 length 속성의 값을 len 이라는 변수에 할당했습니다.
마지막으로 console.log() 메소드를 사용하여 변수 len을 출력하는 10 이라는 결과를 얻을 수 있습니다.
예제 2: Read Only
String.length 속성은 read-only 입니다. 다시 말해 읽기는 가능하지만 임의로 값을 쓸 수는 없습니다.
코드상으로 값을 할당해도 아무일도 일어나지 않습니다. 다음 예제를 확인해 보겠습니다:
let string2 = "Programming";
string2.length = 5;
console.log(string2); // Programming
console.log(string2.length); // 11
위의 예제 코드에서는 string2의 length 속성에 5를 할당했습니다.
할당된 문자열 “Programming”은 11 글자인데 강제로 5를 할당하고 console.log() 메소드를 통해 string2.length의 값을 출력해 보니 변경된 점이 없는 것을 알 수 있습니다.
이러한 상황이 벌어진 이유는 String.length 속성은 read-only 읽기전용이기 때문입니다.
이 속성에 값을 할당하는 코드는 원본 배열에 어떠한 변경도 주지 못합니다.