🔑 연산자
😵 제가 if 문을 연습하며 가장 많이 한 실수는 = 이었습니다.
도대체 아무리 봐도 맞는 것 같은데 어디가 틀린거지? 하면서 머리를 싸매고 1시간을 넘게 고민한 결과 = 때문이라는 사실을 알고 매우 슬펏지요...ㅜ
컴퓨터에서 = 은 '갈다'가 아니고 '할당' 이라는 것을 뼛속 깊이 깨달았습니다..

(이렇게까지 썼으니 이제 다시는 잊지 않을겁니다.후후~ 탈출 )
덧셈과 뺄셈 등 간단한 연산도 할당으로 가능합니다.
x = yx += y (x = x + y)x -= y (x = x - y) 등등 앞에서 ===을 =으로 잘못알았던 비교 연산자 입니다.
==은 동등하다 라는 뜻인데 앞에 !가 들어간 !=은 부등함을 뜻합니다.
===은 피연산자들이 완전히 같고, type까지 일치하는 경우에 참을 반환합니다.
!==은 그 반대의 의미입니다.
그 외에는 >, >=, <, <= 가 있습니다.
그런데 주의할 점! 위의 연산자들은 모두 그 연산자를 썼을 때 '참을 반환한다'는 개념으로 이해해야 합니다. 컴퓨터는 좌, 우변의 피연산자가 T/F로 반환되었는지 생각합니다.
3 === 3 // true
3 === '3' // false
1 != 2 // true
1 != "1" // false
https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Expressions_and_Operators
변수를 선언하거나 if 문을 쓰면서 우리의 손가락을 덜 아프게 해주는 착한 연산자 입니다.
and: &&
or: ||
Not: !
if (answer === "선릉") {
alert("가까우시네요!");
} else if (answer === "강남") {
alert("가까우시네요!");
} else if (answer === "을지로") {
alert("조금 멀리 사시네요.");
} else {
alert("거긴 어디인가요?");
}
이거 보다
if (answer === "선릉" || answer === "강남" || answer === "역삼") {
alert("가까우시네요!");
} else if (answer === "을지로") {
alert("조금 멀리 사시네요.");
} else {
alert("거긴 어디인가요?");
이렇게 쓰는 것이 이해하기도 더 쉽고 else if의 반복을 줄일 수 있습니다.
앗 그런데 만약 '경기에 살면서 자차가 있다'도 "가까우시네요!"를 출력하고싶다면 어떻게 해야할까요?
간단하게 ()로 묶어주면 됩니다.
if (answer === "선릉" ||(answer === "경기" && car === "있다")) {
alert("가까우시네요!");
}
그 외에도 다양한 연산자가 있습니다.