본문 바로가기

프론트앤드 수업

자바스크립트 형변환, 비교,논리연산자

728x90


암시적변환
자바스크립트에서 자동 형변환해 계산해주는 변환법
ex) alert( "6" / "2"); // 3. 자동으로 숫자형으로 형변환해서 연산이 수행된다.

명시적변환
개발자가 직접 형을 변환하는 변환법

parseInt(문자); // 문자형을 정수형 숫자로 변환
parseFloat(문자); // 문자를 실수형으로 변환
Number(문자); // 문자를 정수&실수형 숫자로 변환 (문자가 있을시 NaN반환)


String(숫자); // 숫자를 문자로 변환해줌
숫자.toString(진법); // 숫자를 문자로 변환해줌 - 진법을 바꿀 수 있음
숫자.toFixed(소수자리수); // 숫자를 문자로 변환해줌 - 실수형의 소수점자리를 지정할 수 있음
숫자 + "문자열"; // 숫자와 문자열을 한 문자열로 더해줌


덧셈연산자는 문자열의 연결과 변환을 제공하기에 계산을 위해서는 정수형으로 변환해야한다.

다른 산술연산자는 오직 숫자형의 피연산자만 다룬다.

증가된값을 바로 사용하려면 전위형 증감연산자를 사용한다.
++a 전위형 증감 연산자

값을 증가시키지만 증가되기 전 기존값을 먼저 사용하려면 후위형 증감연산자를 사용한다.
a++ 후위형 증감 연산자


비교연산자
==  값이 같다. (동등 연산자) '1' == 1 -> true
=== 값과 타입이 같다.(일치연산자) '1' === 1 -> false
!= 값이 다르다(부등연산자)
!== 값과 타입이 다르다. (불일치연산자)
> 크다.
< 작자.
>= 크거나 같다.
<= 작거나 같다.


논리 연산자
||(OR) &&(AND) !(NOT)

1과 0으로 사용시 불린데이터로 변경해준다.
1 || 0 / true. 1이 true로 변경된다.

OR 연산자가 피연산자가 여려개인경우 순서대로 왼쪽부터 수행한다.
값이 true라면 연산을 멈추고 그 값을 내보내준다.
하지만 모든 피 연산자가 false인 경우 마지막 피연산자의 값을 반환해준다.
consol.log( "" || "1" || "2") 일시 1에서 값을 반환하고 종료.

AND연산자는 하나라도 false가 나오면 정지가 되기에 앞의 연산에서 false가 나오면 뒤의 연산자를 사용하지 않는다.
불린형으로 변환해서 비교하며 모든 연산자가 true일시 제일 마지막 값을 반환해준다.
consol.log( "2" || "1" || "3") 일시 전체를 다 비교한 후 2와 1을 제외한 3만 반환한다.
consol.log(null & 5) 일시 첫번째 연산자에서 flase가 나왔기에 그대로 null을 반환한다.(5를 비교하지 않음)
consol.log(1 && 2 && null & 5) 일시 1과 2를 지나쳐 null에서 false가 나오기에 null을 반환하고 종료

NOT 연산자는 반대의 내용만 출력된다.
consol.log(!true) -> false // consol.log(!false) -> true // consol.log(!!true) -> true [2개가 붙으면 2번 적용된다]

728x90
댓글