Hell路 World 삐약-
Do it 자바스크립트 2-2. 연산자. 코딩테스트, 면접 단골 질문 tip 본문
자바스크립트

Do it 자바스크립트 2-2. 연산자. 코딩테스트, 면접 단골 질문 tip

날으는쏘피 2021. 5. 26.
728x90

출처 : 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++ 식으로 많이 사용하는 것 같다. 

 

728x90

 


 

 

 

연산자 우선순위

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가 반환되는 것을 확인할 수 있다.

 

 

 


공부하며 정리하는 초보 개발자입니다.

포스팅 내용에 잘못된 점이나 더 좋은 방법이 있다면 댓글로 알려주시면 감사하겠습니다 :)

728x90
Comments