Programming Language/JavaScript
191111 오늘의 깨달음
Hitzi
2019. 11. 11. 21:49
오늘은 부정연산자의 개념에 관해 깨달은것이 하나 생겼다.
! <-- 바로 이 느낌표인데, 보통
1
2
3
4
5
6
|
var a = "nice"
if(a != "nice"){
console.log("no!");
} else {
console.log("yes!");
} //yes! 가 출력됨.
|
이런식으로 값이 같지 않은경우를 나타낼때 쓰는 부정연산자.
오늘 코딩 강의를 보면서 이해가 안되는점이 하나 있었는데, 바로
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
var b = false;
if(!b){
console.log("no!")
} else {
console.log("yes!")
} //이경우 "no!"가 출력..
var c = true;
if(!c){
console.log("no!")
} else {
console.log("yes!")
} //이경우 "yes!"가 출력.
|
if문의 () 안에 있는 변수앞에 부정연산자가 붙었으니
미지수x 에 -1을 곱하듯 해당 변수의 부정연산자의 boolean 값을 반대로 바꿔준다는 뜻으로 오해했었다.
실제 코드는 살짝 더 복잡했기때문에 굉장히 머리가 아팠는데,
위에 적은것 처럼 코드를 간단하게 만들어 콘솔창에서 테스트를 해보니
if(!변수)는 if(변수==false) 와 같은뜻이라는 걸 알 수 있었다.
단어 앞에 부정어를 붙이길래 당연히 그런식으로 받아들였는데.. 컴퓨터와의 문화차이를 극복하는길은 멀고도 험하다.