연산자

연산자란 프로그래밍에서 연산에 쓰이는 기호들입니다. 연산자에는 산술연산자, 문자 결합 연산자, 대입 연산자, 증감 연산자, 비교 연산자, 논리 연산자가 있습니다.

산술연산자

산술 연산자에는 더하기(+), 빼기(-), 곱하기(*), 나누기(/), 나머지(%)가 있습니다. 산술 연산자는 연산 대상 데이터가 반드시 2개 있어야하는 이항 연산자입니다.

산술 연산자의 종류와 기본형
종류 기본형 설명
+ A+B 더하기
- A-B 빼기
* A*B 곱하기
/ A/B 나누기
% A%B 나머지

산술 연산자 예제

<script>
    var num1 = 15;
    var num2 = 2;
    var result;

    result = num1 + num2;

    document.write(result, "<br>");
    result = num1 - num2;
    document.write(result, "<br>");
    result = num1 * num2;
    document.write(result, "<br>");
    result = num1 / num2;
    document.write(result, "<br>");
    result = num1 % num2;
    document.write(result, "<br>");
</script>

결과

문자 결합 연산자

문자 결합 연산자는 피연산자가 문자형 데이터 입니다. 여러 개의 문자를 하나의 문자형 데이터로 결합할 때 사용합니다.

더하기 연산자에 피연산자로 문자형 데이터가 한 개라도 포함되어 있으면 다른 피연산자의 데이터형은 자동으로 문자형 데이터로 형 변환 되고 문자 결합이 이루어져 하나의 문자형 데이터를 반환합니다.

문자형 데이터 + 문자형 데이터 = 하나의 문자형 데이터
ex) "do it" + "javascript" = "do it javascript";
문자형 데이터 + 숫자형 데이터 = 하나의 문자형 데이터
ex) "100" + 200 = "100200";

문자 결합 연산자 예제

<script>
    var t1 = "학교종이";
    var t2 = " 땡땡땡 ";
    var t3 = 8282;
    var t4 = " 어서 모이자";
    var result;

    result = t1 + t2 + t3 + t4;
    document.write(result);  //"학교종이 땡땡땡 8282 어서 모이자"
</script>

결과

대입 연산자

대입연산자(=)는 연산된 데이터를 변수에 저장할 때 사용합니다. 복합 대입 연산자(+=, -=, *=, /=, %=)는 산술 연산자와 대입 연산자가 복합적으로 적용된 것을 말합니다.

대입 연산자의 종류
종류 풀이
A = B A = B
A -= B A = A-B
A *= B A = A*B
A /= B A = A/B
A %= B A = A%B

대입 연산자 예제

<script>
    var num1 = 10;
    var num2 = 3;

    num1 += num2; //num1 = num1(10) + num2(3);
    document.write(num1, "<br>"); //13

    num1 -= num2; //num1 = num1(13) - num2(3);
    document.write(num1, "<br>"); /10

    num1 *= num2; //num1 = num1(10) * num2(3);
    document.write(num1, "<br>"); //30

    num1 %= num2; //num1 = num1(130 % num2(3);
    document.write(num1, "<br>"); //0

결과

증감 연산자

증감 연산자에는 숫자형 데이터를 1씩 증가시키는 증가 연산자(++)와, 반대로 1씩 감소시키는 감소 연산자(--)가 있습니다. 증감 연산자는 피연산자가 한 개만 필요한 단항 연산자입니다. 증감 연산자는 변수의 어느 위치에 오는가에 따라 결괏값이 달라집니다.

1) 변수의 값을 1만큼 감소시킨다.
(변수)--; 또는 --(변수);

2) 변수의 값을 1만큼 증가시킨다.
(변수)++; 또는 ++(변수);
1) 먼저 B의 값이 1만큼 증가되고, 증가된 B의 값이 A에 대입된다.
var A = ++B;

2) 먼저 B의 값이 A에 대입되고, B가 1만큼 증가한다.
var A = B++;

증감 연산자 예제

<scrip>
    var num1 = 10;
    var num2 = 20;
    var result;

    num1--; //num1 : 9
    document.write(num1, "<br>");

    num1++; //num1 : 10
    document.write(num1, "<br>");

    result = num2++; //result : 20, num2 : 21
    document.write(result, "<br>");

    result = ++num2; //result : 22, num2 : 22
    document.write(result,"<br>");
</scrip>

결과

비교 연산자

비교 연산자는 두 데이터를 '크다, 작다, 같다'와 같이 비교할 때 사용하는 연산자입니다. 연산된 결괏값은 true(참) 또는 false(거짓)로 논리형 데이터를 반환합니다.

비교 연산자의 종류
종류 설명 비고
A > B A가 B보다 크다.
A < B A가 B보다 작다
A >= B A가 B보다 크거나 같다.
A <= B A가 B보다 작거나 같다.
A == B A와 B는 같다. 숫자를 비교할 경우 자료형(type)은 숫자형이든 문자형이든 상관하지않고 표기된 숫자만 일치하면 true를 반환합니다. 가령, 숫자형 10과 문자형 "10"은 같은 것으로 인식되어 true를 반환합니다.
A != B A와 B는 다르다. 숫자를 비교할 경우 자료형은 숫자형이든 문자형이든 상관하지 않고 표기된 숫자만 다르면 true를 반환합니다. 가령, 숫자형 10과 문자형 "10"은 같은 것으로 인식되어 A!=B에 대해 false를 반환합니다.
A === B A와 B는 같다. 숫자를 비교할 경우 반드시 표기된 숫자와 자료형도 일치해야만 true를 반환합니다. 10과 "10"을 비교했을 경우 표기된 숫자는 같지만 하나는 숫자형 10이고 하나는 문자형 "10"이므로 false를 반환합니다.
A !== B A와 B는 다르다. 숫자를 비교할 경우 반드시 표기된 숫자 또는 자료형이 일치하지 않을 때 true를 반환합니다. 가령, 10과 "10"을 비교했을 경우 표기된 숫자는 같지만 하나는 숫자형 10이고 하나는 문자형 "10"이므로 이때는 true를 반환합니다.

비교 연산자 ==와 !=는 피연산자의 자료형(type)이 비교 연산자의 실행 결과에 영향을 미치지 않습니다.

var k=10, m="10"; k == 10; //true m == 10; //true

하지만 비교 연산자 중 ===과 !==는 피연산자 자료형에 따라 결괏값이 달라집니다.

var k=10, m="10"; k === 10; //true m === 10; //false

비교 연산자 예제

<script>
    var a = 10;
    var b = 20;
    var c = 10;
    var d = "20";
    var result;

    result = a > b;
    document.write(result, "<br>");
    result = a < b;
    document.write(result, "<br>");
    result = a <= b;
    document.write(result, "<br>");
    result = a == f;
    document.write(result, "<br>");
    result = a != f;
    document.write(result, "<br>");
    result = a === f;
    document.write(result, "<br>");
</script>

결과

논리 연산자

논리 연산자에는 ||(or), &&(and), !(not)이 있으며, 논리 연산자는 피연산자가 논리형 데이터인 true 또는 false로 결괏값을 반환합니다. ||(or) 연산자는 피연산자 중 하나만 true이면 true라는 결괏값을 반환합니다. 하지만 &&(and) 연산자는 피연산자 중 하나만 false이면 flase라는 결괏값을 반환합니다. !(not)은 논리 부정 연산자로, 피연산자가 true이면 false라는 반대의 결괏값을 반환합니다.

논리 연산자의 종류
종류 설명
|| or 연산자라 부르며, 피연산자 중 값이 하나라도 true가 존재하면 true로 결괏값을 반환합니다.
&& and 연산자라 부르며, 피연산자 중 값이 하나라도 false가 존재하면 false로 결괏값을 반환합니다.
! not 연산자라 부르며, 단항 연산자입니다. 피연산자의 값이 true이면 반대로 flase로 결괏값을 반환합니다.