[JavaScript] 자바스크립트 연산자

S0ju·2022년 5월 9일
0

JavaScript

목록 보기
4/22

1. 대입연산자
변수에 값을 넣는 역할

let a = 1;

2. 산술연산자
사칙연산(덧셈,뺄셈,나눗셈,곱셈)을 할수있도록 해주는

let a=1;
let b=2;
console.log(a+b); //덧셈
console.log(a*b); //곱셈
console.log(a-b); //뺄셈
console.log(a/b); //몫
console.log(a%b); //나머지

3. 연결연산자
두 개 이상의 문자열을 이어붙이는 연산

let a="1";
let b="2";
console.log(a+b); //문자열 + 문자열 -> 문자열 이어붙이기 / 결과 : 12

주의! 덧셈을 할 땐 양쪽이 숫자인지 확인!

let a="1";
let b=2;//숫자
console.log(a+b); //뒤가 숫자이더라도 자동으로 연결연산자로 바뀌어버림(묵시적 형변환) / 결과 : 12

4. 복합연산자
산술연산자+대입연산자

let a=5;
a += 10; //a=a+10; / a -= 10; a *= 10; a /= 10; 모두 가능 
console.log(a); //15

5. 증감연산자
원시타입 중 숫자형에만 사용 가능
산술연산자 두번 이어씀

let a=10;
a++; // a+=1 / a--; 도 가능
console.log(a); //11

증감연산자를 변수 이름 오른쪽(뒤)에 쓰면 해당 라인이 끝나고 나서 값이 바뀜 -> 후위연산

let a=10;
console.log(a--); //10
console.log(a); //9

증감연산자를 변수 이름 왼쪽(앞)에 쓰면 증감연산자를 만난 해당 라인부터 바로 값이 바뀜 -> 전위연산

let a=10;
console.log(--a); //9
console.log(a); //9

5. 논리연산자
불린 자료형을 위한 연산자

! -> NOT (true면 false로, false면 true로 바꿈)

console.log(!true); //false
console.log(!false); //true

&& -> AND (왼쪽과 오른쪽에 있는 피연산자 두 개가 모두 참일 경우에만 참)

console.log(true&&true); //true
console.log(true&&false); //false

|| -> OR ( 둘 중 하나만 참이어도 참)

console.log(true||false); //true
console.log(false||true); //true
console.log(false||false); //false

이 3개의 논리연산자들은 조건문에서 매우 유용하게 사용되니 잘 알아두기!😊

7. 비교연산자
두 개의 값이 같다 / 같지 않다 / 크다 / 크거나 같다 / 작다 / 작거나 같다

let compareA = 1 == "1"; // =은 대입연산자, ==은 비교연산자
console.log(compareA); // true

자바스크립트에서 =을 두번만 쓰면 값만 비교하게 됨

let compareA = 1 === "1"; 
console.log(compareA); // false

자바스크립트에서 =을 세번 쓰면 값뿐만 아니라 타입도 비교하게 됨

let compareA = 1 != "1"; // 두 개의 값이 같지 않냐
console.log(compareA); // false
let compareA = 1 !=="1"; // 자료형이 다름
console.log(compareA); // true

앞으로 더 안전한 비교를 위해 ==보다는 ===사용할 것!😊

let compareA = 1 > 2; // 1이 2보다 크냐
console.log(compareA); // false
let compareA = 1 <= 2; // 1이 2보다 작거나 같냐
console.log(compareA); // true

8. typeof 연산자
변수나 상수에 들어있는 값이 현재 어떤 타입을 가지고 있는지 알 수 있는 연산자

typeof 뒤에 변수명을 써주면 변수에 들어있는 자료형이 뭔지 출력해줌

let compareA = 1; 
compareA = "1"; 

자바스크립트는 타입에서 굉장히 자유로운 언어이기 때문에 compareA에 숫자를 넣어놨다가 문자를 넣어도 전혀 상관 X -> 동적 타입 언어 -> 에러 발생 가능

let compareA = 1; 
compareA = "1";
console.log(typeof compareA); //string

9. null병합 연산자
?? -> null병합 연산자 (양 쪽의 피연산자 중에 null이나 undefined이 아닌 값을 선택

let a;
a=a??10; //a가 undefined이기 때문에 10 선택
console.log(a); //10
profile
프론트엔드 개발자가 되기 위해 공부중입니다 : )

0개의 댓글

관련 채용 정보