반응형
var test=""; if(test >=0) console.log("ok"); console.log(Number(test));
// 결과값 : ok 0

var test=null; if(test >=0) console.log("ok"); console.log(Number(test));
// 결과값 : ok 0

var test ="a"; console.log(Number(test));
//결과값 : NaN

 

 

변수값이 null 이거나 "" 인데 

0하고 비교 연산을 하면 

0처럼 취급되는 것..... 왜그런지 생각해보니..

 

연산자 사용시 null은 아스키코드값이 0인것..

Number로 치환해봐도 0인것... 

주의해야겠음..

 

** 자바는 정수 연산일 경우 int타입을 기본으로 한다.

크기가 4byte보다 작은 타입(byte,char,short)은 int로 변환된 후 연산이 수행된다.

따라서 연산의 결과도 int 타입이 된다.

** 서로 다른 타입의 피연산자가 있을 경우느 두 피연산자 중 크기가 큰 타입으로 자동변환된 후 연산을 수행한다.

 

반응형

+ Recent posts