
표현식이란 어떤 값으로 평가 되는 것. 여기에서 표현식을 평가한다는 말은 표현식의 값과 변수, 함수 등의 값을 바탕으로 식의 값을 계산하는 행위이다.
가장 간단한 표현식은 숫자, 문자열, 논리값 등이다.
또한 연산자를 사용히면 표현식을 조합하여 더욱 복잡한 표현식을 만들어 낼 수 있다.
2 + 3 + 4
2 + (3 * 4) // -> 14
(2 + 3) * 4 // -> 20
연산자에는 우선순위라는 것이 정해져있고 그룹 연산자 ()를 사용해서 가장 먼저 평가된다.
연산자 우선순위에 따라 진행되지만, 우선순위가 같은 연산자가 나열되어 있으면 연산 순서를 연산자 우선순위만으로 결정 할 수 없다.
24 / 6 * 2
( 24 / 6 ) * 2 // -> 8
24 / ( 6 * 2 ) // -> 2
연산자에는 왼쪽과 결합해서 연산할지 아니면 오른쪽과 결합해서 연산할지 결정하는 결합 법칙이 정해져있다.
나눗셈 연산자와 곱셈 연산처럼 연산자의 우선순위가 같을 떄는 왼쪽에서 오른쪽 방향으로 결합한다.
변수 값을 바꾸는 표현식은 일반적으로 부수 효과가 있는 표현식이라고 한다.
대입 연산자, 증가 연산자, 감소 연산자, delete가 부수 효과가 있는 연산자이다.
피연산자가 숫자인 연산자이다.
| 연산자 | 뜻 | 예제 | 예제의 뜻 |
|---|---|---|---|
| + | 더하기 | a + b | a와 b를 더한 값 |
| - | 빼기 | a - b | a와 b를 뺀 값 |
| * | 곱하기 | a * b | a와 b를 곱한 값 |
| / | 나누기 | a / b | a와 b를 나눈 값 |
| % | 나머지 | a % b | a와 b를 나눈 나머지 값 |
주의사항
7 / 2 // -> 3.515 % 4 // -> 3
5 % 1.5 // -> 0.51 + "2month" // -> 12month0/0 // -> NaN
"one" * 1 // -> NaN
true + true // -> 2
1 + null // -> 1
1 + undefined // -> NaN| 연산자 | 뜻 | 예제 | 예제의 뜻 |
|---|---|---|---|
| ++ | 증가 연산자 | ++a | a에 1을 더한 다음에 a 값을 평가한다. |
| ++ | 증가 연산자 | a++ | a를 평가한 다음에 a에 1을 더한다. |
| -- | 감소 연산자 | a-- | a에 1을 뺀 다음에 a 값을 평가한다. |
| -- | 감소 연산자 | --a | a를 평가한 다음에 a에 1을 뺀다. |
| + | 아무것도 처리하지 않음 | +a | a와 같은 값으로 평가한다. |
| - | 부호 반전 | -a | a의 부호를 반전한 값으로 평가한다. |
| 연산자 | 예제 | 예제의 뜻 |
|---|---|---|
| += | a += b | a = a + b |
| -= | a -= b | a = a - b |
| *= | a *= b | a = a * b |
| /= | a /= b | a = a / b |
| %= | a %= b | a = a % b |
sum += data;
sum = sum + data;
이 코드는 같은 표현이다.