출처 : Do it 자바스크립트 + 제이쿼리 입문(이지스퍼블리싱)
자바스크립트 프로그래밍에서 사용하는 연산자에는 산술, 문자 결합, 대입(복합 대입), 증감, 비교, 논리, 삼항 조건 연산자가 있다.
▶ 산술연산자
+(더하기), -(빼기), *(곱하기), /(나누기), %(나머지)
▶ 비교연산자
>(크다), <(작다), >=(이상, 크거나 같다), <=(이하, 작거나 같다),
== (같다), != (같지않다), === (데이터타입까지 완전 일치한다)
▶ 논리연산자
&&(그리고, and), ||(또는, or), !(not)
참고로 or의 ||는 enter키 위에 있습니다
▶ 대입연산자
= 말그대로 바로 대입하는 연산자
대입 연산자의 종류
종류 | 풀이 |
A = B | A = B |
A += B | A = A+B |
A *= B | A = A*B |
A /= B | A = A/B |
A %= B | A = A%B |
var a = 10;
a = a+10;
//위 식은 보통 축약형 a+=10 으로 사용한다
▶ 증감연산자
++(1씩 증가), --(1씩 감소)
증감연산자는 위치에 따라 약간 tricky한데 연산자의 위치가 앞에오느냐 뒤에오느냐에 따라 결과값이 달라진다
var a = 10;
var b = 10;
var c = a++;
document.write(c); //값은 10, 변수 c에 a값을 먼저 대입한 후 +1한다
var d = ++b;
document.write(d); //값은 11, 변수 b에 먼저 +1을한 후 변수 d에 대입한다.
보통은 a++ 식으로 많이 사용하는 것 같다.
연산자 우선순위
1. ()
2. 단항 연산자(--, ++, !)
3. 산술 연산자(*, /, %, +, -)
4. 비교 연산자(>, >=, <, <=, ==, ===, !==, !=)
5. 대입(복합 대입) 연산자 (=, +=, -=, *=, /=, %=)
코딩테스트, 면접에서 자주 물어보는 연산자 관련 질문
비교연산자 == , === 의 차이점은??
==의 경우 데이터 타입에 상관없이 그 값만 같다면 true가 반환되지만 ===의 경우 데이터 타입까지 완전 일치해햐 true를 반환한다
var a = 10; //숫자형
var b = '10'; //문자형
document.write(a==b); //true
document.write(a===b); //false
undefined과 null
var a;
var b = null;
document.write(typeof a); //undefined
document.write(a); //undefined
document.write(typeof b); //object
document.write(b); //null
document.write(a==b); //true
document.write(a===b); //false
아무것도 할당받지 않은 변수 a는 undefined(한정되지 않은, 확실하지 않은), 빈값의 b는 null이다.
차이점은 데이터 타입으로 구분할 수 있을 것 같다. a는 그 타입도 정해지지 않았기 때문에 undefined로 나오지만 b는 null값의 객체로 분류된다.
따라서 테이터타입에 상관없이 그 값만 비교하는 == 연산자에서는 true가 반환되고
타입까지 비교하는 ===연산에서는 false가 반환되는 것을 확인할 수 있다.
공부하며 정리하는 초보 개발자입니다.
포스팅 내용에 잘못된 점이나 더 좋은 방법이 있다면 댓글로 알려주시면 감사하겠습니다 :)
'자바스크립트' 카테고리의 다른 글
Do it 자바스크립트 4-2. 배열 객체와 자주쓰는 메서드. 배열함수 (0) | 2021.07.15 |
---|---|
Do it 자바스크립트 4-1. 객체. 자주쓰는 내장객체 Date(), Math() (0) | 2021.07.13 |
Do it 자바스크립트 3. 제어문. 조건문if, 선택문switch-case, 반복문for, while. 백텍, 백틱`으로 출력하기 (0) | 2021.06.10 |
Do it 자바스크립트 2. 변수(var, let)와 상수(const). 호이스팅, 스코프scope by얄코 (0) | 2021.05.23 |
Do it 자바스크립트 1. 프론트엔드 개발, 단어의 뜻과 사용 기초 (0) | 2021.05.19 |