[JS] 연산자 (Operator)
by Roel Downey연산자 (Operator)
- 연산의 사전적 의미 : 규칙에 따라 계산하여 값을 구함
- 연산자 Operator 형태
- + , - , * , / , % ,
- > , >= , < , <=
- == , != , === , !==
- 콤마(,), typeof, delete, void
- instanceof, in , new 등
## 숫자로 변환
- 연산하기 전에 우선 숫자로 변환
- 변환된 값으로 연산
- 값타입이 Undefined 이면 변환값은 NaN
예)
var value;
console.log(10+value);
실행 결과 ) NaN
- 값타입이 Null 이면 변환값은 +0
- 값타입이 Boolean 이면 변환값은 true:1 , false:0
예)
console.log(10+null); // null 은 0
console.log(10+true); // true 은 1
console.log(10+false); // false 은 0
실행 결과 )
10
11
10
- 값타입이 String 이면 변환값은 값이 숫자이면 숫자로 연산 , 단 더하기(+) 는 연결
예)
console.log(10+"123");
console.log(123 - "23");
실행 결과 )
10123
100
- 양쪽의 평가 결과가 하나라도 숫자가 아닐때 NaN 반환
예)
console.log(10*"20");
console.log(10 * true);
console.log(10 * false);
console.log(10 * null);
console.log(10 * "A");
실행 결과 )
200
10
0
0
NaN
- 소수 값이 생기는 경우 처리
2021.12.30 - [Web/JavaScript] - [JS] 소수점 계산 오류 (배정밀도 64비트 부동소수점 )
예)
console.log(2.3*3);
console.log(2.3 * 10 * 3 / 10);
실행 결과 )
6.8999999999999995
6.9
단항 연산자
- 형태 : +value
- 값을 Number 타입으로 변환
예)
var value = "7";
console.log(typeof value);
console.log(typeof +value);
console.log(typeof Number(value));
실행 결과 )
string
number
number
- 형태 : -value
- 값의 부호를 바꿈 ( +는 -로, -는 +로 바꿈 )
예)
var value = 7;
console.log(-value);
console.log(8 + -value);
console.log(value);
실행 결과 )
-7
1
7
후치 ++ 연산자
- 형태 : value++
- 문장을 수행한 후에 값을 자동으로 1 증가 시킴
전치 ++ 연산자
- 형태 : ++value
- 문장 안에서 값을 자동으로 1 증가 시킴
후치 -- 연산자
- 형태 : value--
- 문장을 수행한 후에 값을 자동으로 1 감소 시킴
전치 -- 연산자
- 형태 : --value
- 문장 안에서 값을 자동으로 1 감소 시킴
! 연산자
- 형태 : !value
- 논리 NOT 연산자
- 표현식 평가 결과를 true -> false , false -> true 반환
== 연산자
- 동등 연산자
숫자 타입으로 변환
예)
console.log(1 == "1");
실행 결과 )
true
undefined 비교
예)
var value;
console.log(value == undefined);
실행 결과 )
true
undefined , null 비교
예)
var value;
console.log(value == null);
실행 결과 )
true
=== 연산자
- 일치 연산자
타입이 다름
예)
console.log(1 === "1");
실행 결과 )
false
undefined , null 비교
예)
var value;
console.log(value == null);
console.log(value === null);
실행 결과 )
true
false
!== 연산자
- 불일치 연산자
조건 연산자
- 3항 연산자
- exp ? exp-1 : exp-2
true 이면 exp-1 결과 반환
false 이면 exp-2 결과 반환
조건 연산자
예)
console.log(1 === 1 ? "같음" : "다름");
console.log(1 === "1" ? "같음" : "다름");
실행 결과 )
같음
다름
'Web > JavaScript' 카테고리의 다른 글
[JS] 문장(Statement) (0) | 2022.01.03 |
---|---|
[JS] __proto__가 [[Prototype]]으로 표시 (0) | 2022.01.03 |
[JS] 소수점 계산 오류 (배정밀도 64비트 부동소수점 ) (0) | 2021.12.30 |
[JS] 데이터 타입 (0) | 2021.12.29 |
[JS] 변수 (0) | 2021.12.29 |
블로그의 정보
What doing?
Roel Downey