Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

자바스크립트 Symbol.toString() 메서드 – 심볼 객체의 문자열 표현 구하기

Symbol.toString() 메서드란?

자바스크립트의 Symbol.toString() 메서드는 지정된 심볼(Symbol) 객체의 문자열 표현을 반환합니다. 심볼은 ES6(ECMAScript 2015)에서 도입된 원시 타입으로, 이름 충돌 없이 고유한 객체 프로퍼티 키를 생성할 때 주로 사용됩니다.

심볼 값은 문자열 연결 연산자(+)로 직접 변환할 수 없기 때문에, 화면이나 콘솔에 출력하려면 반드시 toString() 메서드를 호출해야 합니다. 반환되는 문자열은 항상 Symbol(설명) 형태를 따릅니다.

예제 코드

다음은 Symbol.toString() 메서드의 동작을 확인할 수 있는 전체 예제입니다. Symbol.for()를 사용해 전역 심볼 레지스트리에 세 개의 심볼을 생성하고, 버튼을 클릭하면 각 심볼의 문자열 표현이 화면에 순서대로 출력됩니다.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
    body {
        font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    }
    div {
        font-size: 20px;
        font-weight: 500;
    }
</style>
</head>
<body>
<h1>JavaScript Symbol.toString() 메서드</h1>
<div class="sample"></div>
<button class="Btn">클릭하세요</button>
<h3>위 버튼을 클릭하면 심볼의 문자열 표현이 출력됩니다</h3>
<script>
    let fillEle = document.querySelector(".sample");
    const symbol = Symbol.for("HELLO");
    const symbol1 = Symbol.for("NEW");
    const symbol2 = Symbol.for(711);
    document.querySelector(".Btn").addEventListener("click", () => {
        fillEle.innerHTML += symbol.toString() + "<br>";
        fillEle.innerHTML += symbol1.toString() + "<br>";
        fillEle.innerHTML += symbol2.toString() + "<br>";
    });
</script>
</body>
</html>

실행 결과

페이지가 처음 로드된 상태는 아래와 같습니다.

자바스크립트 Symbol.toString() 메서드 – 심볼 객체의 문자열 표현 구하기

"클릭하세요" 버튼을 누르면 각 심볼의 문자열 표현이 다음과 같이 화면에 추가됩니다.

자바스크립트 Symbol.toString() 메서드 – 심볼 객체의 문자열 표현 구하기

  • Symbol(HELLO)
  • Symbol(NEW)
  • Symbol(711)