연산자

연산자란?

  • 주어진 식의 결과 값을 산출하는 것을 연산이라고 하는데 연산을 위해 사용하는 기호를 연산자라고 한다.

산술연산자

  • 더하기 연산자 : A + B
  • 빼기 연산자 : A - B
  • 곱하기 연산자 : A * B
  • 나누기 연산자 : A / B
  • 나머지 연산자 : A % B (배수를 구할 때 자주 사용한다)
1
2
3
4
5
6
7
8
let a = 10000;
let b = 2500;
 
console.log(a + b); //출력결과 : 12500
console.log(a - b); //출력결과 : 7500
console.log(a * b); //출력결과 : 25000000
console.log(a / b); //출력결과 : 4
console.log(a % b); //출력결과 : 0

문자결합연산자

  • 문자결합 연산자는 여러 문자를 결합하여 하나의 문자형 데이터를 만들고자 할 때 사용한다.
  • 숫자형데이터와 문자형데이터를 결합하면 하나의 문자형 데이터가 된다.
  • '+' 연산자를 사용한다.
1
2
3
4
5
6
7
let a = 10000;
let b = "원";
let c = "가나다";
let d = "라마바사";
 
console.log(a + b); //출력결과 : 10000원
console.log(c + d); //출력결과 : 가나다라마바사

대입연산자

  • 대입 연산자는 연산된 데이터를 최종적으로 변수에 저장시킬때 사용한다.
  • '=' 연산자를 사용한다.
  • a += b 라고 쓸 경우 a = a + b 로 연산한다. 이를 복합대입연산자 라고 한다.
1
2
3
4
5
6
7
8
9
10
11
let a = 100;
let b = 300;
console.log(a) //출력결과 : 100
 
let a += b; //a = a + b와 같음
console.log(a); //출력결과 : 400
 
let a -= b; //a = a - b;
let a *= b; //a = a * b;
let a /= b; //a = a / b;
let a %= b; //a = a % b;

증감연산자

  • 증가 연산자(++) : 숫자형 데이터를 1씩 증가시키는 연산자
  • 감소 연산자(--) : 숫자형 데이터를 1씩 감소시키는 연산자
  • 연산하고자 하는 데이터가 한개만 필요한 단항 연산자이다.
  • 연산자가 변수의 앞에 오느냐 뒤에 오느냐에 따라 결과값이 달라진다.
1
2
3
4
5
6
7
8
let a;
let b = 100;
 
a = ++b; //b의 값을 1증가시킨 후 a변수에 담는다.
console.log(a); //출력결과 : 101
 
a = b++; //b의 값을 a에 먼저 담은 후 1을 증가시킨다.
console.log(a); //출력결과 : 100

비교연산자

  • 두 데이터를 비교할 때 사용하는 연산자
  • 연산된 결과의 값은 true 또는 false로 논리형 데이터를 반환한다.
  • '==' 연산자는 데이터가 어떤 유형이든 값만 같다면 true를 반환한다. '===' 연산자는 데이터 유형까지 같아야만 true를 반환한다.
  • '!' 연산자는 '~가 아니다'로 해석하면 된다. '!==' 라면 같지 않다 라고 읽으면 되고, 데이터가 서로 같지 않을경우 true를 반환한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* 값의 크기를 비교하는 부등호 연산자 */
let a = 10 > 100 //10은 100보다 크지 않으므로 a에는 false가 저장된다.
let b = 100 < 1000 //100은 1000보다 작으므로 b에는 true가 저장된다.
let c = 100 <= 200 //100은 200보다 작거나 같으므로에서 작음에 충족하므로 c에는 true가 저장된다.
let d = 200 >= 200 //200보다 작거나 같으므로에서 같음에 충족하므로 d에는 true가 저장된다. 
 
/* 값이 같은지를 비교하는 ==, === 연산자 */
let e = 10;
let f = "10";
let g = 10;
 
console.log(e == f); //출력결과 : true
console.log(e === f); //출력결과 : false
console.log(e !== g); //출력결과 : false
console.log(e !=== g); //출력결과 : true

논리연산자

  • 논리연산자에는 ||(or), &&(and), !(not)연산자가 있다. 논리형 데이터인 true , false로 반환한다.
  • ||(or) 연산자 : or 연산자라 부르며, 피연산자 중 값이 하나라도 true가 존재하면 true
  • &&(and) 연산자 : and 연산자라 부르며, 피연산자 중 값이 하나라도 false이면 false
  • !(not) 연산자 : not 연산자라 부르며, 단항 연산자이다. 피연산자의 값이 true면 반대로 false
1
2
3
4
5
6
7
8
let a = 10;
let b = 20;
let c = (a + b == 30); //true가 저장된다.
let d = (a > b); //false가 저장된다.
 
console.log(c && d); //출력결과 : false
console.log(c || d); //출력결과 : true
console.log(!c); //출력결과 : false

연산자 우선순위

  • 1. ()
  • 2. 단항 연산자 (--, ++, !)
  • 3. 산술 연산자 (*,+,-,/,%)
  • 4. 비교 연산자 ( >,>=,< , < =,==,===,!=,!==)
  • 5. 논리 연산자 (&&, ||)
  • 6. 대입 연산자 (=, +=, -=, *=, /=, %=)

삼항조건 연산자

  • 삼항조건 연산자는 조건식의 데이터 결과(true/false)에 따라 실행 결과가 달라진다.
  • 조건식의 만족 여부에 따라 실행되는 스크립트를 다르게 설정하고자 할때 사용한다.
  • (ex. 예를들어, 20세 이상이면 성인이라고 출력, 미만이면 미성년자라고 출력)
삼항조건식
  • 조건식? 실행문1 : 실행문2;
  • 조건식의 값이 ture면 실행문 1을, false면 실행문 2를 실행
1
2
3
4
5
6
7
8
9
10
세개의 가격 합이 만원을 넘으면 넘긴 금액만큼 'ㅇㅇ원 초과'를 출력하고,
만원을 넘지 않으면 '돈 관리 잘했어요' 라는 문구를 출력하고자 할때
 
let price1 = 1000,
    price2 = 5000,
    price3 = 6000,
    total = price1 + price2 + price3,
    result = total > 10000 ? total - 10000 + "원 초과" : "돈 관리 잘했어요";
 
console.log(result); //출력결과 : 2000원 초과

논리 조건문

논리합 조건문
  • 논리합 연산자는 좌변이 참이면 우변을 실행하지 않는다.
1
2
3
4
5
6
7
8
9
10
11
(불 표현식) || (불 표현식이 참일때 실행할 문장)
true || console.log("우변이 무시됨 안나옴");
false || console.log("우변이 실행됨");
 
//예시
let a = 10;
a = a > 0 || "가나다";
console.log(a); //출력결과 : true
 
a = a < 0 || "라마바";
console.log(b); //출력결과 : "라마바"
논리곱 조건문
  • 논리곱 연산자는 양 변이 모두 참일때만실행한다.
1
2
3
4
5
6
7
8
9
10
11
(불 표현식) && (불 표현식이 참일때 실행할 문장)
true && console.log("우변도 참일 경우 실행됨");
false && console.log("이미 좌변이 false이므로 우변 실행되지 않음");
 
//예시
let a = 10;
a = a > 0 && "양수";
console.log(a); //출력결과 : "양수"
 
a = a < 0 && "음수";
console.log(b); //출력결과 : false