Symbol 관련 테스트 코드 실행 결과 문의
140
1 asked
Symbol 관련 테스트 코드를 Sandbox로 확인해 보았는데 결과가 다르게 나와서 문의드립니다.
Javascript로 sandbox를 create하였고, 생성된 index.mjs 파일에 강의내용의 Symbol 테스트 코드를 동일하게 작성해여 테스트 하였습니다.
let testSymbol1 = Symbol(1);
let testSymbol2 = Symbol(1);
console.log(typeof testSymbol1, testSymbol1);
console.log(typeof testSymbol2, testSymbol2);
console.log(testSymbol1 == testSymbol2);
console.log(testSymbol2 === testSymbol2);Console로 확인한 결과는
2symbol Symbol(1)
false
true
이렇게 나옵니다.
null로 나오지 않고, === 결과도 true인데 어떤 이유로 다르게 나오는건지 궁금합니다.
Answer 1
1
안녕하세요. 답변 도우미입니다.
Symbol은 호출될 때마다 고유한 심볼 값을 생성하기 때문에, Symbol(1)을 두 번 호출하면 서로 다른 객체가 됩니다. 따라서 testSymbol1 == testSymbol2는 false가 나오며, 같은 참조인 testSymbol2 === testSymbol2는 true가 됩니다.
이외에는 출력환경에 따라 조금씩 달라질 수도 있지만, 다음과 같이 type 은 symbol, 해당 값은 Symbol(1) 이 되는 것이 일반적입니다. 혹시 영상? 과 다른 부분이 있다면, dream@fun-coding.org 로 메일주시면 검토해서 답변드리겠습니다. 제가 출장중이라서, 금주말까지 답변드리겠습니다.
감사합니다.

0
답변 감사드립니다. 제가 테스트한 === 코드에 오타가 있었음을 확인하였습니다.(testSymbol1을 2로 잘못 적었네요..)
symbol null이 아닌 symbol Symbol(1)로 나오는 이유도 궁금했었는데, 환경적인 차이(엔진 버전?)로 이해하였습니다.
감사합니다!
교육기간을 연장할 수 있는지 문의드립니다.
0
36
1
메일 확인부탁드립니다
0
56
1
CodeSandbox Vanilla 질문있습니다
0
59
1
part1을 수강하지 않아도 지장이 없다 하셨는데
0
107
1
강의에 관해 문의 드립니다.
0
90
1
메일확인 부탁드립니다.
0
90
1
14강 - 72,73번 강의 영상이 동일한거 같습니다.
0
106
1
호환성 관련 태그
0
120
1
강의화면은 index.js인데 왜 샌드박스코드에서는 index.mjs인지 궁금해요
0
136
1
강의화면은 index.js인데 왜 샌드박스코드에서는 index.mjs인지 궁금해요
0
144
1
div id="highlighter"가 강의화면에는 없는데 왜 샌드박스파일에는 있는지 궁금해요
0
86
1
강의화면에 height 가 vh가 아닌 vw라고 나와있는데 뭐가맞는거죠
0
117
1
메일 확인 부탁드립니다.
0
146
1
메일 확인 부탁드립니다
0
150
1
특별한 형태의 javascript배열에서
0
135
1
메일 확인부탁드립니다!
0
160
1
codesandbox 업데이트..
0
144
1
pdf 파일에 있는 링크주소로 들어가지지가 않습니다.
0
266
2
강의에서 알려주신 Properties for the flex container 복습 사이트, 검색 발견되어서 공유드립니다~
0
152
1
removeEventlistener 를 왜 해주어야 하는지
0
227
1
100vw 관련 질문
0
333
2
VS CODE html:5 <tab>기능이 안됩니다
0
345
1
[모던웹페이지 만들기9](1:40)class-desc 카드부분관련
0
245
2
backtotop 버튼을 연속으로 여러번 사용할때 스크롤이 끝까지 안올라갈 때가 생깁니다.
0
342
1

