표현식(expression) : 리터럴(ex. 10
), 식별자(ex. sum
), 연산자(ex. 10 + 20
), 함수 호출(ex. square()
) 등의 조합
<-> 하나의 값으로 평가될 수 있는 문(statement)
=, +=, -=, *=, /=, %=
, <, >=, <=
조건식 ? [조건식이 true일때 반환할 값] : [조건식이 false일때 반환할 값]
|| (OR), && (AND), ! (NOT)
'Cat' && 'Dog' // "Dog"
왼쪽 피연산자부터 차례대로 피연산자를 평가하고 마지막 피연산자의 평가가 끝나면 마지막 피연산자의 평가 결과를 반환
var x, y, z;
x = 1, y = 2, z = 3; // 3
그룹 내의 표현식을 최우선으로 평가한다. 그룹 연산자를 사용하면 연산자의 우선 순위를 1순위로 높일 수 있다.
10 * 2 + 3 // 23
10 * (2 + 3) // 50
자신의 뒤에 위치한 피연산자의 데이터 타입을 문자열로 반환
typeof '' // "string"
typeof 1 // "number"
typeof NaN // "number"
typeof true // "boolean"
typeof undefined // "undefined"
typeof Symbol() // "symbol"
typeof null // "object`- 주의 : 일치 연산자(===) 사용할 것
typeof [] // "object"
typeof {} // "object"
typeof new Date() // "object"
typeof function () {} // "function"