Front-end/JavaScript

비교 연산자 ==, ===

1. 대입연산자 

a = 1;

 

 

2. 비교연산자 

- 좌항과 우항의 값이 같은지, 큰지, 크거나 같은지 판별 

- true, false 두 가지 값을 가짐 (boolean형)

 

2-1 .동등연산자 == (equal operator)

- 이퀄을 2개 써줘야 함 (하나쓰면 대입연산자)

alert(1==2)             //false
alert(1==1)             //true
alert("one"=="two")     //false 
alert("one"=="one")     //true

2-1 .일치연산자 === ( strict equal operator)

- 좌항과 우항의 값과 데이터 형식 모두 일치

alert(1=='1');              //true
alert(1==='1');             //false  숫자와 문자이기 때문

 

 

 

 

**왜 ===를 써야하는가?

alert(null == undefined);       //true
alert(null === undefined);      //false 엄격하게 보자면 다른 값
alert(true == 1);               //true
alert(true === 1);              //false
alert(true == '1');             //true
alert(true === '1');            //false
 
alert(0 === -0);                //true
alert(NaN === NaN);             //false

- null : 값이 없다  // 프로그래머가 의도적으로 지정한 상황

- undefined : 값이 존재하긴 하나 정의되어있지 않음  // 프로그래머가 의도하지 않은 상황

- NaN : 성립하지 않는 수, 계산할 수 없음

- 참고 : dorey.github.io/JavaScript-Equality-Table/

 

 

==는 같지 않은 것 좋차도 같게 인식하는 경우의 수가 있으므로 === 사용 권장   

 

 

 

2. 부정과 부등호 

- != : =의 부정 (같지 않다)

- !== : ===의 부정 (정확하게 같지 않다)

alert(1!=2);            //true
alert(1!=1);            //false
alert("one"!="two");    //true
alert("one"!="one");    //false

- > : 크다

- >= : 크거나 같다

alert(10>20);   //false
alert(10>1);    //true
alert(10>10);   //false

alert(10>=20);      //false
alert(10>=1);       //true
alert(10>=10);      //true

 

'Front-end > JavaScript' 카테고리의 다른 글

반복문 for  (0) 2020.09.07
조건문 if  (0) 2020.09.04
변수와 데이터 타입  (0) 2020.09.04
숫자와 문자 - 문자의 연산  (0) 2020.09.04
숫자와 문자 - 수의 연산  (0) 2020.09.04