코딩하는 베어브릭

[JavaScript] #2. 연산자 본문

Web/javascript

[JavaScript] #2. 연산자

bearbrick 2021. 11. 28. 23:27

JavaScript의 연산자 중에서 헷갈리는 연산자들을 작성해보았다.

 

 

 

1. +

+는 숫자 연산을 해주는 기능과 문자열을 연결해주는 기능이 있다.

1 + 2 = 3
'my' + 'cat' = my cat
'1' + 2 = 12 (숫자 2가 문자로 자동변환)

 

 

 

2. **

**는 거듭제곱을 해주는 연산자이다.

2 ** 3 = 8

 

 

 

3. ++

++는 1을 증가시켜주는 연산자이다.

이 연산자는 어느 위치에 쓰냐에 따라 기능이 달라진다.

변수 앞에 작성하면 전위 연산자, 변수 뒤에 작성하면 후위 연산자라고 부른다.

 

전위 연산자는 먼저 변수를 +1 증가시킨 후, 전위연산자가 작성된 코드를 실행한다.

a = 1;
A = ++a;  // a = a + 1
              // A = a(=2)
B = a;      // B = a(=2)

 

후위 연산자는 후위 연산자가 작성된 코드를 실행한 후, 다음 코드에서 변수를 +1 증가시킨다.

a = 1;
A = a++;  // A = a(=1)
              // a = a + 1
B = a;      // B = a(=2)

 

 

 

4. --

--는 1을 감소시켜주는 연산자이다.

이 외의 기능은 ++와 같다.

 

 

 

5. ||

||은 OR연산자로 하나라도 참이면 참으로 본다.

if (a>0 || b>0 || c>0){
...
}

여기서 앞의 조건인 a>0이 true라면 뒤에 있는 b, c는 검사하지 않고 true라고 판별한 후, 다음 코드를 진행한다.

 

따라서 제일 앞에 간단한 연산식을 두고, 뒤로 갈수록 복잡한 연산식을 두는 것을 권장한다.

 

 

 

6. &&

&&은 AND연산자로 모두 참이면 참으로 본다.

if (a>0 && b>0 && c>0){
...
}

여기서 앞의 조건인 a>0이 false라면 뒤에 있는 b, c는 검사하지 않고 false라고 판별한 후, 다음 코드를 진행한다.

 

따라서 이 경우에도 제일 앞에 간단한 연산식을 두고, 뒤로 갈수록 복잡한 연산식을 두는 것을 권장한다.

 

 

 

7. ==

==은 loose equality로 type을 신경쓰지 않고 같은 지를 판단한다.

a = '5' //문자
b = 5  //숫자
a == b // true

 

 

 

8. ===

===은 strict equality로 type을 신경쓰고 같은 지를 판단한다.

a = '5' //문자
b = 5  //숫자
a == b // false

 

따라서 ==보다는 ===을 사용하는 것을 권장한다.

Comments