JAVASCRIPT

자바스크립트문자열객체

ture403 2023. 4. 22. 16:58

- Frederick Philips Brooks
Mythical Man-Month 저자
728x90
반응형

at()

ES2021에서 도입된 문자열 메서드 중 하나입니다. 이 메서드는 문자열에서 특정 인덱스의 문자를 반환합니다. charAt()과 비슷하지만, at()은 유니코드 코드 포인트의 인덱스를 사용한다는 점에서 다릅니다. 반환할 문자의 위치를 나타내는 0부터 시작하는 정수 값입니다. 만약 인덱스가 문자열 길이를 벗어난 경우, undefined를 반환합니다.

 

구문

at(index)

 

예시

const str = 'Hello, world!';
console.log(str.at(1)); // 출력 결과: "e"
console.log(str.at(2)); // 출력 결과: "l"
console.log(str.at(3)); // 출력 결과: "l"
console.log(str.at(4)); // 출력 결과: "o"
console.log(str.at(5)); // 출력 결과: ","
console.log(str.at(7)); // 출력 결과: "w"
console.log(str.at(20)); // 출력 결과: undefined

charAt()

자바스크립트의 문자열 메서드 중 하나입니다. 이 메서드는 문자열에서 특정 인덱스의 문자를 반환합니다. 반환할 문자의 위치를 나타내는 0부터 시작하는 정수 값입니다. 만약 인덱스가 문자열 길이를 벗어난 경우, 빈 문자열을 반환합니다

 

구문

str.charAt(index)

예시

const str = 'Hello, world!';
console.log(str.charAt(1)); // 출력 결과: "e"
console.log(str.charAt(3)); // 출력 결과: "l"
console.log(str.charAt(5)); // 출력 결과: ","
console.log(str.charAt(7)); // 출력 결과: "w"
console.log(str.charAt(9)); // 출력 결과: "r"
console.log(str.charAt(10)); // 출력 결과: "l"
console.log(str.charAt(20)); // 출력 결과: ""

charCodeAt()

이 메서드는 문자열에서 특정 인덱스의 문자의 유니코드 코드 포인트 값을 반환합니다.문자의 위치를 나타내는 0부터 시작하는 정수 값입니다. 만약 인덱스가 문자열 길이를 벗어난 경우, NaN을 반환합니다.

 

구문

str.charCodeAt(index);

예시

const str = 'Hello, world!';
console.log(str.charCodeAt(1)); // 출력 결과: "101"
console.log(str.charCodeAt(3)); // 출력 결과: "108"
console.log(str.charCodeAt(5)); // 출력 결과: "44"
console.log(str.charCodeAt(7)); // 출력 결과: "119"
console.log(str.charCodeAt(9)); // 출력 결과: "114"
console.log(str.charCodeAt(10)); // 출력 결과: "108"
console.log(str.charCodeAt(20)); // 출력 결과: "NaN"

charPointAt()

이 메서드는 문자열에서 특정 인덱스의 문자의 유니코드 코드 포인트 값을 반환합니다. charCodeAt()와 비슷하지만, codePointAt()은 유니코드 코드 포인트의 인덱스를 사용한다는 점에서 다릅니다.

 

구문

str.codePointAt(index);

예시

const str = 'Hello, world! 🌍';
for (let i = 0; i < str.length; i++) {
  console.log(`Index: ${i}, Code Point: ${str.codePointAt(i)}`);
}
//Index: 0, Code Point: 72
//Index: 1, Code Point: 101
//Index: 2, Code Point: 108
//Index: 3, Code Point: 108
//Index: 4, Code Point: 111
//Index: 5, Code Point: 44
//Index: 6, Code Point: 32
//Index: 7, Code Point: 119
//Index: 8, Code Point: 111
//Index: 9, Code Point: 114
//Index: 10, Code Point: 108
//Index: 11, Code Point: 100
//Index: 12, Code Point: 33
//Index: 13, Code Point: 128029

concat()

호출된 문자열에 다른 문자열을 붙여서 새로운 문자열을 반환합니다. 기존 문자열은 수정되지 않습니다.

여러 개의 문자열을 합치는 작업이 필요할 때, concat() 메서드는 유용한 메서드입니다.

 

구문

str.concat(string2, string3, ..., stringX);

예시

const str1 = 'Hello';
const str2 = 'world';
const result = str1.concat(', ', str2, '!');
console.log(result); // 출력 결과: "Hello, world!"

localeCompare()

이 메서드는 두 개의 문자열을 비교하여, 해당 문자열이 사전순으로 어느 쪽에 위치하는지를 나타내는 숫자를 반환합니다.

localeCompare() 메서드는 str 문자열이 compareString보다 사전순으로 먼저 나오는 경우 음수를, 뒤에 나오는 경우 양수를, 두 문자열이 같은 경우 0을 반환합니다. 또한 이 메서드는 현재 언어 설정에 따라 문자열을 비교합니다.

 

구문

str.localeCompare(compareString);

여기서 str은 비교할 문자열이고, compareString은 비교 대상 문자열입니다.

 

예시

const str1 = 'Hello';
const str2 = 'world';
const result = str1.localeCompare(', ', str2, '!');
console.log(result); // 출력 결과: "1"

const str1 = 'apple';
const str2 = 'banana';
const result = str1.localeCompare(str2);
console.log(result); // 출력 결과: -1

 

normalize()

유니코드 문자열의 정규화를 수행하는 메서드입니다. 이 메서드는 문자열에서 발견되는 모든 유니코드 문자를 정규화하여 새로운 문자열을 반환합니다. 유니코드 문자열을 다룰 때 유용하며, 다양한 정규화 형식을 제공하여 문자열을 다루는 경우 유용합니다.

 

구문

str.normalize(form);

여기서 str은 정규화할 문자열이고, form은 정규화 형식입니다. form 매개변수는 생략 가능하며, 기본값은 "NFC"입니다.

 

예시

const str = 'Hello world';
const normalizedStr1 = str.normalize('NFC');
console.log(normalizedStr1); // 출력 결과: Hello world

const str1 = 'Hello world';
const normalizedStr2 = str1.normalize();
console.log(normalizedStr2); // 출력 결과: Hello world

 

padEnd()

현재 문자열을 지정된 길이까지 다른 문자열로 채워넣어 새로운 문자열을 반환합니다. 채워넣을 문자열은 선택적으로 지정할 수 있으며, 기본값은 공백입니다.메서드는 문자열의 길이를 맞추는 데 유용하며, 특히 문자열의 출력 형식을 일정하게 유지하고자 할 때 사용됩니다.

 

구문

str.padEnd(targetLength [, padString]);

예시

const str1 = 'Hello world';
const paddedStr1 = str1.padEnd(15, '!');
console.log(paddedStr1); // 출력 결과: "Hello world!!!!"

const str2 = 'Hello world';
const paddedStr2 = str2.padEnd(11, '!');
console.log(paddedStr2); // 출력 결과: "Hello world!!!!"

 

padStart()

현재 문자열을 지정된 길이까지 다른 문자열로 채워넣어 새로운 문자열을 반환합니다. 채워넣을 문자열은 선택적으로 지정할 수 있으며, 기본값은 공백입니다.메서드는 문자열의 길이를 맞추는 데 유용하며, 특히 문자열의 출력 형식을 일정하게 유지하고자 할 때 사용됩니다.

 

구문

str.padStart(targetLength [, padString]);

예시

const str1 = 'Hello world';
const paddedStr = str1.padStart(10, '!');
console.log(paddedStr); // 출력 결과: "Hello world"

const str2 = 'Hello world';
const paddedStr2 = str2.padStart(15, '!');
console.log(paddedStr2); // 출력 결과: " !!!!Hello world"

repeat() 

문자열을 지정된 횟수만큼 반복하여 새로운 문자열을 반환합니다.메서드는 반복적인 문자열 작업을 수행할 때 유용합니다. 예를 들어, 특정 문자열을 반복하여 출력하거나, 문자열을 일정한 형식으로 구성할 때 사용될 수 있습니다.

 

구문

str.repeat(count);

예시

const str1 = 'Hello world';
const repeatedStr1 = str1.repeat(3);
console.log(repeatedStr1); // 출력 결과: "Hello worldHello worldHello world"

const str2 = 'Hello world';
const paddedStr2 = str2.repeat(7);
console.log(paddedStr2); // 출력 결과: " Hello worldHello worldHello worldHello worldHello worldHello worldHello world"