17_[vanillajs]연산자
연산자
- 연산을 할 때 사용되는 기호(문자)
- 대입 연산자 =
let a = 1;
- 복합 대입 연산자
let a = 1;
a+=1;//a=a+1
a-=1;//a=a-1
a*=2;//a=a*2
a/=2;//a=a/2
a%=2;//a=a%2
- 산술 연산자
- 사칙연산을 할 때 사용되는 연산자 +, -, *, /
다만, /는 실수형태의 나눈 값이 된다. 즉, 5/3=1.66666666666….이 출력된다
%는 나머지값을 의미한다
let a = 1+2;
let b = 1-2;
let c = 1*2;
let d= 1/2;
let e = 1%2;
특히 +를 이용해서 문자열을 합칠 수 있음
const a= '안녕';
const b= '하세요';
const c = a+b;
console.log(c);//안녕하세요
- 증감자
- 전위증감자 : ++a, —a -a=a+1를 ++a가 적혀진 expression(한 줄)에서 바로 저장, 적용됨
- 후위증감자:a++, a— -a=a+1을 a++가 적혀진 expression 다음 줄에서 저장, 적용됨
- 논리 연산자
- ! : NOT 연산자
-boolean 값을 toggle
const a= !true;//a=false;
- && : AND 연산자
-&& 기준 왼쪽과 오른쪽이 모두 true이면 true
const a = 1;
const b = 2;
const c = (a == 1) && (b ==1);//false
-
: OR 연산자 -
기준 왼쪽과 오른쪽 중 하나라도 true이면 true
const a = 1;
const b = 2;
const c = (a == 1) || (b ==1);//true
⚠️논리 연산자 내 우선순위: NOT ➡️ AND ➡️ OR
const bool=!(true&&false||true && false ||!false);
/**
* 우선순위가 !->and->or이기 때문에
* !(~~||true)==>!(false||true)==>false가 될 것!
*/
console.log(bool);
- 비교 연산자
- ==, ===같은지 확인하는 연산자
-== : 타입을 검사하지 않음
-=== : 타입과 값을 모두 비교
const a= true;
const b = 1;
const c = false;
const d = 0;
const e = null;
const f = undefined;
console.log(a==b);//true
console.log(c==d);//true
console.log(e==f);//true
⚠️ 웬만하면 ===를 이용하자!
- ! == : 두 값이 같은지 확인하는 연산자
-! = 도 위의 ==처럼 타입을 검사하지 않음!
const a= true;
const b = 1;
console.log(a!==b);//true
- 크기를 비교하는 경우
const g = 1;
const h = 2;
console.log(g>h);//false
console.log(g<h);//true
console.log(g>=h);//false
console.log(g<=h);//true