JavaScript의 문자열(String) 이해하기

BossTeemo·2024년 5월 2일
post-thumbnail

JavaScript에서의 문자열(String) 이해하기

소개

JavaScript에서 문자열은 텍스트를 표현하는 데 사용되는 자료형입니다. 작은따옴표(''), 큰따옴표(""), 백틱(`) 세 가지 문자를 사용하여 문자열을 정의할 수 있으며, 다양한 내장 메서드와 기능을 제공합니다.

문자열 선언

문자열을 선언하는 다양한 방법이 있습니다:

  • 작은따옴표('')
    let singleQuoteStr = 'Hello, World!';
  • 큰따옴표("")
    let doubleQuoteStr = "JavaScript Strings";
  • 백틱(``)
    let backtickStr = `Template Literal`;

문자열 조작

  1. 문자열 연결 (Concatenation)

    • + 연산자를 사용하여 문자열을 연결할 수 있습니다.
    let firstName = 'John';
    let lastName = 'Doe';
    let fullName = firstName + ' ' + lastName;
    console.log(fullName); // John Doe
  2. 템플릿 리터럴 (Template Literals)

    • 백틱을 사용하여 문자열 내에 변수를 삽입할 수 있습니다.
    let age = 25;
    let name = 'Alice';
    let message = `My name is ${name} and I am ${age} years old.`;
    console.log(message); // My name is Alice and I am 25 years old.
  3. 문자열 메서드 (String Methods)

    • JavaScript는 문자열을 조작하기 위한 다양한 내장 메서드를 제공합니다.

    • length: 문자열의 길이를 반환합니다.

      let text = 'Hello';
      console.log(text.length); // 5
    • toUpperCase()toLowerCase(): 문자열을 대문자 또는 소문자로 변환합니다.

      let greeting = 'Hello, World!';
      console.log(greeting.toUpperCase()); // HELLO, WORLD!
      console.log(greeting.toLowerCase()); // hello, world!
    • substring(): 문자열의 일부분을 추출합니다.

      let str = 'JavaScript';
      console.log(str.substring(0, 4)); // Java
    • split(): 문자열을 지정한 구분자로 분할하여 배열로 반환합니다.

      let sentence = 'This is JavaScript';
      let words = sentence.split(' ');
      console.log(words); // ['This', 'is', 'JavaScript']
    • trim(): 문자열의 앞뒤 공백을 제거합니다.

      let spaced = '   Hello, World!   ';
      console.log(spaced.trim()); // 'Hello, World!'

다국어 지원

JavaScript는 다양한 언어의 문자를 지원하기 위해 여러 방법을 제공합니다. 일반적으로 문자열을 다루기 위해 String 객체의 메서드를 사용합니다. 다음은 다국어 문자열을 처리하는 몇 가지 방법을 설명합니다.

유니코드와 코드 포인트

JavaScript 문자열은 UTF-16으로 인코딩된 유니코드 문자의 배열입니다. 각 문자는 코드 포인트로 식별되며, 유니코드에서 모든 문자는 고유한 코드 포인트를 가집니다.

String.fromCharCode()charCodeAt()

  • String.fromCharCode(): 주어진 유니코드 코드 포인트에 해당하는 문자를 생성합니다.

    let char = String.fromCharCode(65); // 'A'
    console.log(char); // 'A'

    여러 개의 코드 포인트를 인자로 전달하면 해당하는 문자를 모두 포함하는 문자열을 생성할 수 있습니다.

    let chars = String.fromCharCode(65, 66, 67); // 'ABC'
    console.log(chars); // 'ABC'
  • charCodeAt(): 문자열의 특정 위치에 있는 문자의 유니코드 코드 포인트를 반환합니다.

    let code = 'A'.charCodeAt(0); // 65
    console.log(code); // 65

    문자열의 길이가 길 경우 원하는 위치에 있는 문자의 코드 포인트를 얻을 수 있습니다.

    let text = 'ABC';
    let code = text.charCodeAt(1); // 66 ('B'의 코드 포인트)
    console.log(code); // 66

다중 바이트 문자와 codePointAt()fromCodePoint()

다중 바이트 문자 또는 서플리먼트리 플레인(Supplementary Plane)에 속한 유니코드 문자를 처리할 때는 codePointAt()fromCodePoint() 메서드를 사용해야 합니다.

  • String.fromCodePoint(): 유니코드 코드 포인트로부터 다중 바이트 문자를 생성합니다.

    let emoji = String.fromCodePoint(0x1F600); // 😀
    console.log(emoji); // 😀
  • codePointAt(): 문자열의 특정 위치에 있는 다중 바이트 문자의 코드 포인트를 반환합니다.

    let emoji = '😀';
    let codePoint = emoji.codePointAt(0); // 0x1F600
    console.log(codePoint.toString(16)); // 1f600

결론

JavaScript에서 문자열은 텍스트 데이터를 다루는 데 중요한 역할을 합니다. 문자열 관련 다양한 메서드와 기능을 활용하여 텍스트 데이터를 효과적으로 처리하세요.

profile
1인개발자가 되겠다

0개의 댓글