변수와 상수
- 변수 명명 규칙 문자와 숫자, $, _ 만 들어갈 수 있음.
let a = 3;
let a; <- 선언(자바스크립트 엔진에 변수의 존재를 알림) a = undefined <- 초기화(메모리 공간 확보) a = 3 <- 할당(메모리에 값 할당)
- 변화하는 변수를 선언할 땐 let을 사용
- 변화하지 않는 변수를 선언할 땐 const를 사용
자료형
- 숫자형
- 문자형
- 불린형
- null
- undefined
- object
- symbol
- bigint
기본 연산자(연산을 수행하는 기호)
- 단항, 이항, 피연산자
- 단항: 피연산자가 1개인 것
- 이항: 피연산자가 2개인 것
- 피연산자: 연산을 수행하는 대상
- 덧셈 연산자 +
- 뺄셈 연산자 -
- 곱셈 연산자 *
- 나눗셈 연산자 /
- 나머지 연산자 %
- 거듭제곱 연산자 **
- 할당 연산자 =
- 증가·감소 연산자 ++, --
비교 연산자
-
>, >=, <, <=, ==, != 사용
-
불린형 반환
- 비교 연산자를 사용하면 불린형이 반환된다.
-
문자열 비교
- 사전순으로 문자열을 비교한다.
-
다른 형을 가진 값 간의 비교
- 비교하려는 값의 자료형이 다르면 이 값을 숫자형으로 바꿔준다.
console.log('2' > 1); // '2'를 2로 바꿈
- 비교하려는 값의 자료형이 다르면 이 값을 숫자형으로 바꿔준다.
-
일치 연산자
- == 는 동등 연산자, ===는 엄격한 동등 연산자이다.
- == 는 형변환을 시도하고, ===는 형변환을 시도하지 않는다.
-
null, undefined 비교
- ==를 사용하면 true
- ===를 사용하면 false
- 비교 연산자를 사용할 때 숫자변환 시 null은 0으로 변환
- 비교 연산자를 사용할 때 숫자변환 시 undefined는 NaNd으로 변환
논리 연산자
- ||(OR)
- 인수중 하나라도 true면 true를 반환
- 전부 false라면 false를 반환
- truthy값을 반환하거나 전부 falsy이면 마지막 인수 반환
단락 평가
기능을 이용하여 truthy를 만나면 나머지 값들은 평가를 하지 않음
- &&(AND)
- 두 인수가 전부 true일때 true를 반환
- 마지막 truthy값을 반환. falsy가 있다면 그 값을 반환
- OR보다 우선순위가 높음
- !(NOT)
- 우선순위가 가장 높음
- true면 false 반환
- "", 0 , undefined, NaN, null은 false이다.
함수
- 함수 == 주석
함수표현식
-
함수 선언문
function a() {}
-
함수 표현식
const a = function() {}
- 함수를 값으로 사용할 수 있다.
-
콜백 함수
- 함수의 인수로 함수를 넘길 수 있는데 이 함수를 콜백 함수라고 부른다.
- 인수로 전달한 그 함수를
나중에 호출(called back)
하는 것이 콜백의 개념이다.
-
함수 표현식 vs 함수 선언문
- 함수 선언문은 정의되기 전에 미리 쓸 수 있다.
- 함수 표현식은 실행 흐름이 해당 함수에 도달 했을 때 쓸 수 있다.
- 함수 선언문은 코드 블럭내에만 위치한다면 블록 내 어디서든 접근 가능
- 함수 표현식은 변수를 이용하여 어디서든 접근 가능