Chapter 7 연산자
in Frontend / Js / Javascript
Operators
연산자(피연산자, 피연산자?)
산술연산자:
- binary: 연산자(피연산자, 피연산자)
- unary : 연산자(피연산자) => 피연산자에 대한 부수효과 존재
- except
+
: 새로운 숫자를 생성한다
- except
문자열 연결 연산자:
+
- implicit conversion (type coercion) 수행 (개발자의 의도와 관계없이 진행됨)
- 피연산자 중 하나가 string ? string : 산술연산자
- 할당 연산자: 부수효과 당연히 있음
비교 연산자:
==
: 암묵적 type coersion 후 비교, 그래서 예상치 못한 result 나올 수도 있음NaN !== NaN
: 자신과 일치하지 않는 유일한 값- (💡)
Number.isNaN(), Object.is(NaN, NaN) // true
사용
- (💡)
0 === -0
: true- (💡)
Object.is(0, -0) // false
사용
- (💡)
삼항 연산자: 값에 할당가능한 if else 문 (표현식인 문!)
typeof 연산자: 피연산자의 데이터 타입을 문자열로 반환
typeof null
:object
<– bug, JS에서 아직까지도 수정 못하고 있음 (side effect때문에)typeof nonDefinedValue
:undefined
<– ReferenceError 대신, undefined 반환
- wrap up:
- 부수효과 있는 연산자: (=, +=, ++, –, …, delete)