개발/javascript
연산자02 - 할당 연산자
마루쨩
2023. 9. 16. 16:37
"연산자"
2. 할당 연산자
할당 연산자(Assignment Operator)는 우항에 있는 피연산자의 평가 결과를 좌항에 있는 변수에 할당한다. 할당 연산자는 좌항의 변수에 값을 할당하므로 변수의 값이 변하는 부수 효과가 있다.

vat x;
x = 10;
console.log(x); // 10
x += 5; // x = x + 5;
console.log(x); // 15
x -= 5; // x = x - 5;
console.log(x); // 5
x *= 5; // x = x * 5;
console.log(x); // 50
x /=5; // x = x / 5
console.log(x); // 10
x %= 5; // x = x % 5;
console.log(x); // 0
var str = 'My name is';
// 문자열 연결 연산자
str += 'Lee'; // str = str + 'Lee''
console.log(str); // 'My name is Lee'
표현식은 하나의 값으로 평가된다고 했다. 그렇다면 할당 연산은 표현식인 문일까? 아래의 예제를 살펴보자.
var x;
// 할당문은 표현식인 문이다.
console.log(x = 10); // 10
할당 연산은 변수에 값을 할당하는 부수 효과만 있을 뿐 값으로 평가되지 않을 것처럼 보인다. 하지만 할당 연산은 하나의 값으로 평가되는 표현식이다. 할당 표현식은 할당된 값으로 평가된다. 위 예제의 경우 x에 할당된 숫자 값 10으로 평가된다. 따라서 아래와 같이 할당 연산 표현식을 다른 변수에 할당할 수도 있다. 이러한 특징을 활용해 여러 변수에 동일한 값을 연쇄 할당할 수 있다.
var a, b, c;
// 연쇄 할당. 오른쪽에서 왼쪽으로 진행.
// 1) c = 0 : 0으로 평가된다
// 2) b = 0 : 0으로 평가된다
// 3) a = 0 : 0으로 평가된다
a = b = 0;
console.log(a, b, c); // 0 0 0