1. typeof 가 모든 자료형을 리턴하지 않는다.
typeof null >>> object를 반환
typeof function >>> object가 아닌 function 반환
2. && 와 ||의 연산방식
&& 왼쪽 값이 true일 때, 오른쪽 값을 반환
왼쪽 값이 false일 때, 왼쪽 값을 반환
|| 왼쪽 값이 true일 때, 왼쪽 값을 반환
왼쪽 값이 false일 때, 오른쪽 값을 반환
and연산과 or 연산을 같이 할 때는 주의해야한다.
&&연산이 || 연산보다 우선순위가 높다.
a || b && c 의 연산에서 a와 b의 || 연산을 우선으로 하고 싶다면
(a || b) && c 로 괄호를 사용해야한다.
3. null 병합 연산자 ??
ES2020에서 새롭게 추가된 연산자
null 또는 undefined값을 가려내는 연산자
왼쪽이 null이나 undefined 일 경우, 오른쪽의 값이 리턴되고
왼쪽이 null이나 undefined가 아닐 경우, 왼쪽이 리턴된다.
4. 변수와 스코프
ES6에서 let과 const가 추가되었다.
var의 문제점
1. 변수 선언 전에 사용가능(호이스팅)
2. 중복 선언 가능
3. 변수의 유효범위 스코프
- var는 함수 스코프, 함수를 제외한 블록에서 생성된 var 변수를 다른 곳에서 사용할 수 있다.
* let과 const는 블록 스코프
'학습 > JS 학습' 카테고리의 다른 글
[JS]자바스크립트의 문법과 표현 (0) | 2023.11.10 |
---|---|
[JS]함수 다루기 (0) | 2023.11.10 |
[JS]ECMAScript와 모던 자바스크립트 (0) | 2023.11.08 |
[JS] 이벤트 형태 (0) | 2023.11.08 |
[JS]이벤트 핸들러 관련 (0) | 2023.11.08 |