4 연산자 (Operators)

source: categories/study/javascript-mdn/javascript-mdn4.md

연산자 (Operators)

자바스크립트의 산술 연산자로는 +, -, *, /, %(나머지 연산자)가 있습니다.
값은 = 연산자로 할당할 수 있고, +=-=와 같은 복합 할당 연산자를 통해서도 할당할 수 있습니다.
이렇게 쓰인 연산자는 x = x 연산자 y와 같은 결과를 나타냅니다.

x += 5;
x = x + 5;

++--를 각각 점진적인 증가와 감소에 사용할 수 있습니다.
이들은 또한 전처리 또는 후처리 연산자로 사용될 수 있습니다.

+ 연산자는 문자열을 잇기도 합니다.

'hello' + ' world'; // 'hello world'

문자열에 어떤 수(또는 다른 값)를 더하면 일단 모두 문자열로 바뀌게 됩니다.
다음 예를 보시면 무슨 얘기인지 아실 수 있을겁니다.

'3' + 4 + 5; // '345'
3 + 4 + '5'; // '75'

빈 문자열에 어떤 값을 더하는 것은 해당 값을 문자열로 바꾸는 요령입니다.

자바스크립트에서 비교<, >, <=>=를 통해 가능합니다.
이 연산자들은 문자열과 수 양쪽 모두에서 동작합니다.
상동은 약간 직관성이 떨어지는데 이중 등호(==) 연산자는 서로 다른 타입을 비교할 경우 타입 강제 변환을 수행하기 때문에 다음과 같이 기대하지 않은 결과를 만들어내기도 합니다.

123 == '123'; // true
1 == true; // true

타입 강제 변환을 하지 않게 하려면, 삼중 등호 연산자(===)를 사용해야 합니다.

123 === '123'; // false
1 === true; // false

이와 비슷하게 !=!== 연산자가 있습니다.

자바스크립트는 이진 비트 연산자 값도 가지고 있습니다.
사용하고 싶을 때 언제라도 사용할 수 있도록 말이죠.