본문 바로가기
JavaScript

JavaScript '+'연산자

by 하이방가루 2022. 1. 17.
728x90
반응형

이항 연산자 '+'

'+'는 대개 숫자를 더한 결과를 반환한다.

하지만 피연산자로 문자열이 전달되면 '+'는 덧셈이 아닌 문자열을 병합(연결)한다.

ex) alert( 1 + 1 )  // 2

     alert( '1' + 2 ) // 12 << 문자열

     alert( 1 + '3' ) // 13 << 문자열

 

ref) alert( 1 + 1 + '1' ) // 문자열 111이 아니라 문자열 21이 나온다.

     //왼쪽에서 오른쪽으로 순차적으로 연산이 진행되기 때문이다.

     alert( 2 - '1')  // 1 , '1'을 숫자로 바꾼 뒤에 연산이 진행된다.

     alert( '4' / '2' ) // 2, 두 피연산자가 숫자로 바뀐 뒤에 연산이 진행된다.

단항 연산자 '+'

숫자에 단항 덧셈 연산자가 붙으면 이 연산자는 아무런 동작도 하지 않는다.

하지만 피연산자가 숫자가 아닌 경우에는 숫자형으로의 변환이 일어난다.

ex) let x = 2

     alert( +x ) // 2

 

     let y = -2

     alert( +y ) // -2

 

     alert( +true )   // 1

     alert( +"" )      // 0

     alert( +"abc" ) // NaN

 

     let a = "2"

     let b = "3"

     alert( a + b )     // 23

     alert( +a + +b ) // 5

 

     let first = prompt("덧셈할 첫 번째 숫자를 입력하세요",1)

     let second = prompt("덧셈할 두 번째 숫자를 입력하세요",2)

     //기본값을 입력한다고 할 때

     alert( first + second ) // 12

     alert( +first + +second ) //3

728x90
반응형

댓글