증감 연산자에는 숫자형 데이터를 1씩 증가시키는 증가 연산자 (++)와 반대로 1씩 감소시키는 감소 연산자(--)가 있습니다.
증감 연산자는 앞 연산자들과 달리 피연산자가 한개만 필요한 단항 연산자 입니다.
증감 연산자는 변수의 어느 위치에 오는가에 따라 결괏값이 달라집니다.
기본형:
1. 변수의 값을 1만큼 감소시킵니다.
변수--; 또는 --변수;
2. 변수의 값을 1만큼 증가시킵니다.
변수++; 또는 ++변수;
변수 = ++A ; 일때 A의 값이 1만큼 증가되고 증가된 A의 값이 변수에 대입됩니다.
변수 = A++; 일때 A의 값이 변수에 대입되고 A의 값을 1만큼 증가됩니다.
let num1 = 10; //전역변수 num1에 숫자 10을 할당
let num2 = 20; //전역변수 num2에 숫자 20을 할당
let num3 = 20; //전역변수 num3에 숫자 20을 할당
let rusult; //선언
document.write(num1, "<br>");//10
num1--;
document.write(num1, "<br>");//9
num1++;
document.write(num1, "<br>");//10
rusult = num2++;
document.write(rusult, "<br>");//20
document.write(num2, "<br>");//21
rusult = ++num3;
document.write(rusult, "<br>");//21
document.write(num3, "<br>");//21
function func1(){
let result, a = 100, b = 200, c = 300;
result = a < b ? b++ : --c;
document.write(result,"<br>");
document.write(b);
}
func1();
//200
//201
function func2(){
let hap, j, k, l;
j = k = l = 0;
hap = ++j + k++ + ++l;
document.write(hap);
document.write(j);
document.write(k);
document.write(l);
}
func2();
//2111
비교 연산자
두 데이터를 '크다, 작다, 같다'와 같이 비교할 때 사용하는 연산자 입니다.
연산된 결괏값은 true(참) 또는 false(거짓)로 논리형 데이터를 반환합니다.
종류
예시
설명
==
x == y
좌변과 우변이 같다.
===
x === y
좌변과 우변이 같다. 데이터형(문자형, 데이터형, 논리형)도 같다.
!=
x != y
좌변과 우변이 다르다.
!==
x !== y
좌변과 우변이 다르다. 데이터 형도 다르다.
>
x > y
좌변이 우변보다 크다.
<
x < y
좌변이 우변보다 작다.
>=
x >= y
좌변이 우변보다 크거나 같다.
<=
x <= y
좌변이 우변보다 작거나 같다.
let a = 10;
let b = 20;
let c = 10;
let f = "20";
let result;
result = a > b; //10 이 20보다 크다.
document.write(result, "<br>");// false
result = a < b; //10이 20보다 작다.
document.write(result, "<br>");//true
result = a <= b; //10이 20보다 작거나 같다.
document.write(result, "<br>");//true
result = b == f; // 20 과 20은 같다.
document.write(result, "<br>");//true
result = a != b; // 10과 20은 다르다.
document.write(result, "<br>");//true
result = b === f; //20과 20은 같다. 데이터 형도 같다.
document.write(result, "<br>");// false
function func3(){
let i=10, j=10, k=30;
i /= j; // i = i / j // i = 1
j -= i; // j = j - i // j - i(1) = 9
k %= j; // k = k % j // k % j(3) = 3
document.write(i);
document.write(j);
document.write(k);
}
func3();
//193
논리연산자
논리 연산자에는 ∥(or), &&(and), !(not)이 있으며, 논리 연산자는 피연산자가 논리형 데이터인 true 또는 false로 결괏값을 반환합니다.∥(or) 연산자는 피연산자 중 하나만 true이면 true라는 결괏값을 반환합니다. 하지만 &&(and) 연산자는 피연산자 중 하나만 false이면 false라는 결괏값을 반환합니다. !(not)은 논리 부정 연산자로, 피연산자가 true이면 false라는 반대의 결괏값을 반환합니다.
종류
예시
설명
&&
X && Y
둘 다 true인 경우 true를 반환합니다.
||
X || Y
둘 중의 하나 이상이 true인 경우 true를 반환합니다.
!
!X
반대 값을 반환합니다.
let a = 10;
let b = 20;
let m = 30;
let n = 40;
let result;
result = a>b || b>=m || m>n; //false || false ||false
document.write(result, "<br>"); //false
result = a>b || b>=m || m<=n; //false || false || true
document.write(result, "<br>"); //true
result = a<=b && b>=m && m<=n; //true && false && true
document.write(result, "<br>"); //false
result = a<=b && b<=m && m<=n; //true && true && true
document.write(result, "<br>"); //true
result =!(a>b); //!false를 계산
document.write(result, "<br>"); //true