인프런 커뮤니티 질문&답변
데이터값
작성
·
172
0
안녕하세요. 'Javascript 데이터 타입 변환과 조건문 이해' 강의 중 10분 37초 쯤에서 헷갈린 것이 있어 질문드립니다.
처음에 value1의 변수값을 1로 선언했는데,
뒤에
console.log(++value1===3); 에서는 왜 value1변수값이 3이 되는 것인가요??
console.log(value1++ === 2);
로 하면 그냥 일시적으로(?) 1을 더한 것이 아니라 선언한 변수의 값이 아예 바뀌는 것인가요?
답변 1
0
잔재미코딩 DaveLee
지식공유자
안녕하세요. 문법이 직관적이지 않아서, 헷깔리실 수는 있는데요.
일반적인 다른 언어에서 (특히 C 언어등) 많이 쓰는 일종의 단축 문법입니다.
value1 이 1 인상태에서
value1++ === 2 라는 의미는 다음 두 라인의 명령입니다.
value1 === 2
value1 = value1 + 1
따라서, 위 코드가 실행되면 value1 은 2가 된 상태고, 이 상태에서
++value1 === 3 은
value1 = value1 + 1 (즉 3이 됩니다.)
value1 === 3 (즉 true가 됩니다.)
위와 같이 ++는 변수에 값을 업데이트하는 명령이 포함되어 있고요. 이 부분은 영상을 다시 보시면서, 위 글을 읽어보신다면, 충분히 이해하실 수 있으실 것입니다.




