개발 개념 정리/javaScript

[Js] 연산자와 타입 변환 | 덧셈과 다른 연산자들의 차이

개발하는 몽키 2025. 3. 26. 19:12

이 주제에 대해 생각하게 된 이유:

자바스크립트 연산자를 공부하면서 덧셈 연산자에서 피연산자 두개가 있을때 한개의 피연산자가 문자열이라면 다른 한개의 피연산자는 무조건 문자열로 반환된다는 것에 대해 특이하다고 생각했다. 그래서 다른 연산자들도 알아보기로 했다.

alert('1' + 9); // "19"
alert(1 + 3 + '2'); // "42"

1. 덧셈

- 하나라도 문자열이면 문자열 결합이 된다.

alert(2 + '5'); // "25"
alert(3 + '4'); // "34"

 

2. 뺄셈 / 나눗셈

- 하나라도 문자열이면 숫자로 변환 후 계산된다.

alert('3' - 1); // 2 ('3' 이 자동으로 숫자 3으로 변환되어 연산)
alert('8'-'2'); // 6 ('8' 과 '2'는 자동으로 숫자 6과 2 로 변환되어 연산)

3. 곱셈

- 문자열을 숫자형로 변환 후 계산된다.

alert('3' * '2'); // 6 ('3'과 '2'가 숫자 3과 2로 변환되어 곱셈)
alert(2 * '5');   // 10 ('5'가 숫자 5로 변환되어 곱셈)

 

4. 나머지 연산자

- 문자열을 숫자로 변환 후 계산된다.

alert('7' % '3'); // 1 ('7'과 '3'이 숫자로 변환되어 나머지 연산)
alert(10 % '4');  // 2 ('4'가 숫자 4로 변환되어 나머지 연산)

 

5. 지수연산자

- 문자열을 숫자로 변환 후 계산된다.

alert('2' ** '3'); // 8 ('2'와 '3'이 숫자 2와 3으로 변환되어 지수 연산)
alert(3 ** '2');   // 9 ('2'가 숫자 2로 변환되어 지수 연산)

 

결론 :

자바스크립트에서 덧셈(+) 문자열 결합을 하고, 그 외 연산자숫자로 변환 후 계산한다.

'개발 개념 정리 > javaScript' 카테고리의 다른 글

[Js] 조건부연산자 와 if-else문  (0) 2025.03.27