2개의 피연산자를 산술 연산하여 숫자 값을 만듬
피연산자의 값을 변경하는 부수효과(side affect)가 없다
5 + 2
, 7 + 2
...
1개의 피연사자를 산술 연산하여 숫자 값을 만든다
피연산자의 값을 변경하는 부수효과가 있다
++
, --
연산자들은 피연사자의 값을 변경하는 암묵적 할당이 이뤄짐 var x = 1 ;
x++;
console.log(x); // 2
증가/감소 연산자의 위치에 따라 먼저 피연산자의 값을 증가/감소시킨 후, 다른 연산자를 수행할지 결정된다
var x = 2, result;
result = x ++;
console.log(result, x); // 2, 3
----- ----- ----- ----- -----
result = ++ x;
console.log(result, x); // 3, 3
피연산자에 +단항 연산자를 사용하면 피연산자를 숫자 타입으로 변환, 반환한다.
1 + true
: 암묵적으로 불리언 타입의 true를 1로 강제 변환한 후 연산을 수행x = 10
, y = 10
: x와 y가 같은 값을 가지고 있기에 같다고 평가됨==
: 동등 비교(loose equality) = 값이 같음===
: 일치 비교(strict equality) = 타입과 값이 같음삼항조건연산자는 if.. else과 유사하지만 값으로 평가할 수 있는 표현식인 문이다
var x = 10;
var result = x % 2 ? '홀수' : '짝수' ;
우항과 좌항의 피연산자를 논리 연산한다
드 모르간의 법칙으로 나은 가독이 가능하다
!(x && y) === (!x && !y)
왼쪽 피연산자로부터 차례대로 피연산자를 평가하고
마지막 피연산자의 평가가 끝나면 마지막 피연산자의 평가 결과 반환
Var x, y, z;
x = 1, y = 2, z =3; // 3
식을 줄이는 방법으로 아래와 같이 사용할 수 있다(블로그 링크)
function fn() // { if (x) { foo(); return bar(); } else { return 1; } }
function fn() // { return x ? (foo(), bar()) : 1; } 이와 같은식으로 식을 줄일 수 있다.
5 ** 2 = 25