Operator
- 산술 비트 연산자
정수 데이터를 가지고 연산을 수행하는데 연산은 비트 단위로 이루어지고 결과는 다시 10진 정수로 리턴을 해주는 연산자.
~ : 단항 연산자, 1의 보수를 구해준다. (NOT 연산으로 보기도 한다)
>& : Bit AND, 2개의 데이터 모두 1일 때만 1.
>| : Bit OR, 2개의 데이터 모두 0일 때만 0. 그 이외에는 1.
>^ : Bit XOR (eXclusive OR), 2개의 데이터가 같으면 0 다르면 1.
> >> : Shift 연산, 이진수를 오른쪽으로 이동 (첫 비트는 이동 X)
> << : Shift 연산, 이진수를 왼쪽으로 이동
> >>> : 이진수를 오른쪽으로 이동시킴. (첫 비트도 포함, 음수의 경우에는 다르게 작동)
- 논리 연산자
데이터를 Boolean 형태의 하나의 값으로 간주하고 논리 연산을 수행하는연산자
&&(AND) : 둘 다 true일 때만 true. 앞이 false인 경우 뒤의 내용은 확인하지 않는다.
||(OR) : 둘 다 false인 경우에만 false. 앞이 true이면 뒤의 내용은 확인하지 않는다.
!(NOT) : 1 -> 0, 0 -> 1
Fasly : false로 간주하는 데이터. 0, null, NaN, undefined, ""(공백문자열)
Truthy : true로 간주하는 데이터. Falsy가 아닌 데이터.
- 복합 할당 연산자
연산과 할당을 동사에 수행
연산자 =
왼쪽이 참조하는 데이터와 오른쪽 데이터를 연산을 수행하고 왼쪽 변수에 참조를 대입한다.
- 문자열 연산자
+ : 다른 데이터를 문자열로 변환해서 연결을 시켜주는 연산자
* : 숫자로 변환한 가능한 데이터를 곱하는 연산자
- 삼항 연산자
표현식 ? 표현식1 : 표현식2
표현식이 true이면 표현식1, false이면 표현식2
- , 연산자
연속해서 적용
두 피연산자를 모두 평가한 후 오른쪽 피연산자의 값을 반환
- ?? - Nullish Operator
왼쪽의 데이터가 null / undeifined일 때 오른쪽 데이터를 리턴, 그렇지 않으면 왼쪽의 데이터를 리턴.
||를 이용하는 것과 유사하지만 조금 다르다.
- new : 생성자를 호출해서 인스턴스를 생성하고 인스턴스의 참조를 리턴하는 연산자
- this : 생성자나 객체 내부의 함수에서 객체 자신을 가리키는 연산자
- typeof : 데이터의 자료형을 문자열로 리턴해주는 연산자
- delete : 객체의 속성이나 배열의 요소를 삭제하는 연산자
기본데이터는 undefined
- instance of : 객체가 만들어진 클래스를 확인하기 위한 연산자
- in : 데이터가 객체나 배열의 요소인지 확인해주는 연산자
- void : 함수를 만들 때 값을 리턴하지 않도록 지정하기 위한 연산자
- 연산자 우선 순위
>., [인덱스] : 요소 접근
>() 나 new
>!, ++, --, typeof, void, delete, 부호 +와 -
>%, *, /
>사칙연산 +, -
> <, <=, >, >=
> ==, ===, !=, !===
> &, ^, | (순서대로)
> &&, ||
> ?:
> =, +=
> ,
제어문(Control Statement)
기본적인 명령의 흐름은 왼쪽에서 오른쪽으로 위에서 아래로
명령의 흐름을 변경하기 위한 명령어가 제어문
- 분기문
조건이나 값에 따라 다른 문장을 수행하는 것