ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Symbol자료형
    JavaScript ES6 2022. 6. 3. 10:01

    심볼을 만드는 방법은 Symbol('설명') 이렇게 만든다.

    var 심볼 = Symbol('설명');

    심볼의 용도는 Object 자료형의 비밀스런 Key값이다.

    var person = { name : 'Kim' };
    person.weight = 100;

    이런 식으로, 오브젝트에 추가하면 사람들에게 다 보이게 된다.

    그럴때,

    var weight = Symbol('내 시크릿 몸무게임');
    
    var person = { name : 'Kim' };
    //key값에는 문자만 가능했는데, ES6부터 symbol을 넣을 수 있다.
    person[weight] = 100;

    이렇게 심볼을 만들고, 오브젝트명[추가할심볼키값] = 심볼의value값 이렇게 추가해주면 된다.

    이렇게 만든 key와 value는 반복문에서 출력이 되지 않는다. 이유는 enumerable하지 않아서 그렇다.

     

    또, Symbol은 import해온 파일 / 라이브러리를 사용할 때 거기에 있던 object자료를 추가하고 싶을때, Symbol을 사용하면 반복문에도 안뜨니까 기존 코드를 해칠 염려가 없어진다.

     

    이제, 심볼의 특징을 보자.

    var a = Symbol('설명1');
    var b = Symbol('설명1');

    먼저, Symbol은 설명이 같다고 같은 Symbol이 아니다.

    즉, 유니크한 심볼이 생긴다.

    만약, 전역적인 심볼을 만들고 싶으면,

    var a = Symbol.for('설명1')

    이렇게 .for()을 붙이면 같은 설명을 가지면 같은 Symbol이 된다.

     

    두번째로

    var 어레이 = [2,3,4];
    
    어레이[Symbol.iterator];

    이렇게, 어레이에는 기본적으로 Symbol이 저장되어 있다.

    'JavaScript ES6' 카테고리의 다른 글

    Web components로 커스텀 html태그 만들기  (0) 2022.06.03
    Map / Set자료형  (0) 2022.06.03
    for in / for of 반복문  (0) 2022.06.02
    async / await  (0) 2022.06.02
    Promise  (0) 2022.06.01

    댓글

Designed by Tistory.