[JavaScript] 자바와 다른 자바스크립트 Operator 정리

민아·2022년 2월 10일
0
post-thumbnail

💡 자바스크립트는 엄격한 비교와 유형변환 비교를 모두 지원한다.

📖 '==' 연산자와 '==='연산자

'===' 연산자는 변수의 type유형을 고려하는 반면 '==' 연산자는 변수의 value값을 기반으로 type유형을 수정한다. wtf 한달간 자바인간으로 살았다가 다시 자바스크립트를 보니까 대혼돈임🙄

예제

// 일치 비교
// == 값을 자바스크립트 엔진이 형 변환을 해 보고 값이 같으면 TRUE로 표시

// 1 == "1"
// "1" => Number("1") 후 비교 
// true => 1로 변환후 비교, false => 0 으로 변환 후 비교
var x = true;
var y = 1;

result = x == y;
console.log('true == 1 => ' + result);

// 연산자 '==='는 형 변환을 하지 않음 (타입까지 체크)
// 1 == 1 and 'boolean' == 'string'
result = x === y;
console.log('true === 1 => ' + result);
console.log('');

📖 if조건

자바의 if문은 boolean 타입의 값을 반환하지만 자바스크립트의 if문은 객체의 유무도 조건이 된다. wtf2

📌 False로 반환될수 있는 값

  • null;
  • NaN; (Not of Number)
  • 0;
  • empty string (“”);
  • undefined

👉예제

var age
//age = 10;

if(age) {
    console.log('True');
} else {
    console.log('False');
} // 값이 있으면 true 없으면 false

자바스크립트의 if문은 편리하지만 너무 익숙해지면 false로 반환될 수 있는 값을 간과할 수 있으니 조심할것

profile
그냥 꾸준히 하는중

0개의 댓글