연산자

산술연산자

산술 연산자는 산수 시간에 배운 더하기(+), 빼기(-), 곱하기(*), 나누기(/), 나머지(%)가 있습니다. 산술연산자로 연산을 하기 위해서는 연산 대상 데이터가 반드시 2개는 있어야 합니다.

종류

기본형

설명

+

A+B

더하기

-

A-B

빼기

*

A*B

곱하기

/

A/B

나누기

%

A%B

나머지

<script>
    var num1 = 15;
    var num2 = 100;
    var result = 400;
    
    result = num1 + num2; //115
    document.write(result);
    
    result = num1-num2; //-85 변수는 변하는 값이니까
    document.write(result);
    
    //115-85
</script>
<script>
    var num1 = 15;
    var num2 = 100;
    var result = 400;
    
    result = num1 + num2; //115
    document.write(result,"<br />");
    
    result = num1 - num2; //-85 변수는 변하는 값이니까
    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 />");
    
    //115
    //-85
    //1500
    //0.15
    //15
    
</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 = 100;
    var num2 = 200;
    
    num1 = num1 + num2; //300
    num1 += num2;
    
    document.write(num1,"<br />"); //500
    
    var x = 10;
    //x = x = 10;
    x += 10; //x = x +10;
    document.write(x);
    
    //500
    //20
</script>    
<script>
    var num1 = 100;
    var num2 = 200;
    
    //num1 = num1 + num2; 
    num1 += num2;
    document.write(num1,"<br>");
    
    //num1 = num1 - num2;
    num1 -= num2;
    document.write(num1,"<br>");
    
    //num1 = num1 * num2;
    num1 *= num2;
    document.write(num1,"<br>");
    
    //num1 = num1 % num2;
    num1 %= num2;
    document.write(num1,"<br>");
  
</script>
//대입연산자(산업처리기사 기출문제)
function func3(){
    let i=10, j=10, k=30;
    i /= j;  //i = i / j
    j -= i;  //j = j - i
    k % j;  //k = k % j
    document.write(i);  //1
    document.write(j);  //9
    document.wirte(k);  //3
}
//func3();

증감연산자

증감연산자에는 숫자형 데아터를 1씩 증가시키는 증가연산자(++)와 반대로 1씩 감소시키는 감소연산자(- -)가 있습니다. 다른 연산자와는 달리 피연산자가 한개만 필요한 단향 연산자입니다.

먼저 <a>( B의 값을 1만큼 증가)가 실행되고, <b>(증가된 B의 값을 A에 대입)가 실행됩니다.

<b>

var [A = {++B}]<a>

먼저 <a>(B의 값을 A에 대입)가 실행되고, <b>(B의 값을 1만큼 증가)가 실행됩니다.

<a>

var [A = {B]++}<b> 증감 1이 B값에 영향을 주지만 A에 영향을 주지 않는다

   <script>
        let num1 = 10; //전역변수 num1에 숫자 10을 할당
        let num2 = 20; //전역변수 num2에 숫자 20을 할당
        let num3 = 20; //전역변수 num3에 숫자 20을 할당
        let result;

        result = num3++; //20=20+1
        document.write(result,"<br>"); //20
        document.write(num3,"<br>"); //21
        
        result = num3++; //num3=21을 result로 보내주고 +1을 해줘서 22가된다.
        document.write(result,"<br>"); //21
        document.write(num3,"<br>"); //22
        
        result = ++num3; //num3=22값에 +1=23 값을  result 로 보내준다.
        document.write(result,"<br>"); //23
        document.write(num3,"<br>"); //23
    </script>
//증감연산자(산업처리기사 기출문제)
function fun1(){
    let result, a=100, b=200, c=300;
    result = a < b ? b++ : --c;
    document.write(result);
}
fun1();
//200 (++b 전치연산자라면 201)
//후치연산자는 연산문안에서 작동하지 않는다
//증감연산자(산업처리기사 기출문제)
function func2(){
    let hap, j, k, l;
    j = k = l = 0;
    hap = ++j + k++ + ++l;
    document.write(hap);  //2
    document.write(j);  //1
    document.write(k);  //1
    document.write(l);  //1
}
func2();

비교연산자

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

연산자

예시

설명

==

x == y

좌변과 우변이 같다

===

x === y

좌변과 우변이 같다. 데이터형도 같다

.(문자인지 숫자인지 확실히 알고싶을때)

!=

x != y

좌변과 우변이 다르다.

!==

x !== y

좌변과 우변이 다르다. 데이터형도 다르다.

(문자인지 숫자인지 확실히 알고싶을때)

>

x > y

좌변이 우변보다 크다.

<

x < y

좌변이 우변보다 작다.

>=

x >= y

좌변이 우변보다 크거나 같다.

<=

x <= y

좌변이 우변보다 작거나 같다.

<script>
    var a = 10;
    var b = 20;  //숫자
    var c = 10;
    var f = "20"; //문자열
    var result;
   
    result = a > b; //false
    document.write(result, "<br>");
    result = a < b; //true
    document.write(result, "<br>");
    result = a <= b; //true
    document.write(result, "<br>");
    result = b == f; //true
    document.write(result, "<br>");
    result = a != b; //true
    document.write(result, "<br>");
    result = b === f; //false
    document.write(result, "<br>");

</script>

논리연산자

논리 연산자에는 | | (or), & &(and), !(not)이 있으며, 논리 연산자는 피연산자가 논리형 데이터인 true 또는 false로 결과값을 반환합니다.

연산자

예시

설명

&&

x && y

둘다 true인 경우 true를 반환합니다.

||

x || y

둘 중의 하나 이상이 true인 경우 true를 반환합니다

!

!x

반대 값을 반환합니다.

<script>
    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
    
</script>
<script>
    document.write(false || false); //false
    document.write("<br>");
    document.write(false || true); //true
    document.write("<br>");
    document.write(true || true); //true
    
    document.write(false && false); //false
    document.write("<br>");
    document.write(false && true); //false
    document.write("<br>");
    document.write(true && true); //true
</script>

연산자 우선순위

일반적인 산수를 연산할 때처럼 연산자에도 우선순위가 있습니다. 예를 들어 '2+(1*3)=5'와 같은식입니다.

Last updated

Was this helpful?