본문 바로가기
Javascript

Javascript - 연산자(산술, 비교, Logical 등)

by DGK 2021. 9. 17.

 

인프런 자바스크립트 입문 수업을 듣고 중요한 내용을 정리했습니다.
개인 공부 후 자료를 남기기 위한 목적이므로 내용 상에 오류가 있을 수 있습니다.

 

연산자(산술, 비교, Logical 등)

 

  • 산술 연산자
1. 더하기 
var x = 5;
var y = 2;
var y2 = 3;
var z = x + y + y2;
console.log(z);		//10


2. 빼기

var x = 5;
var y = 2;
var z = x - y;
console.log(z);		//3


3. 곱하기

var x = 5;
var y = 2;
var z = x * y;
console.log(z);		//10


4. 나누기

var x = 5;
var y = 2;
var z = x / y;
console.log(z);		//2.5


5. 거듭제곱

var x = 5;
var y = 2;
var z = x ** y;
console.log(z);		//25


6. 나머지 값

var x = 5;
var y = 2;
var z = x % y;
console.log(z);		//1


7. ++, --(1씩 증가, 감소)

var x = 1;
x++;
x++;
console.log(x);  //3	:++는 해당 변수를 1만큼씩 증가시켜주는 연산자

var x = 4;
x--;
x--;
console.log(x);  //2	:--는 해당 변수를 1만큼씩 감소시켜주는 연산자

 

 

  • Assign 연산자
1. 값을 할당하는 연산자(=)
var x = 5;
var y = 2;
console.log(x);		//5
console.log(y);		//2​


2. +=, -+ 연산자

var x = 5;
var y = 2;
x += y;  		// x = x + y;와 동일한 의미
        
console.log(x);		//7


var x = 5;
var y = 2;
x -= y;  		// x = x - y;와 동일한 의미

console.log(x);		//3


3. *=, /=, %=, **= 연산자

var x = 5;
var y = 2;
x *= y;  		// x = x * y;와 동일한 의미

console.log(x);		//10


var x = 5;
var y = 2;
x /= y;  		// x = x / y;와 동일한 의미

console.log(x);		//2.5


var x = 5;
var y = 2;
x %= y;  		// x = x % y;와 동일한 의미

console.log(x);		//1


var x = 5;
var y = 2;
x **= y;		// x = x ** y;와 동일한 의미

console.log(x);		//25

 

 

  • 비교 연산자
console.log(1 == 1);		//true
//여기서 ==는 앞의 것과 뒤의 것이 같은지를 비교하는 연산자(결과는 불리언으로 나옴)


console.log(1 == "1");		//true
//자바스크립트는 계산을 위한 연산에서는 문자와 숫자를 정확히 구별하지만, 
//비교를 위한 연산에서는 문자와 숫자를 구별하지 않고 실제로 해당 값이 동일한지 
//아닌지만 판단한다.
        
        
console.log(1 === "1");		//false       
//만약 비교를 위한 연산에서 값과 데이터 타입까지 모두 비교하려는 경우라면 
//다음과 같이 해야한다.
        
        
//정리 : 비교 연산자에서 ==는 오직 값만 비교하는 연산자이고, ===는 값과 
//데이터 타입까지 모두 비교하는 연산자이다.


console.log(1 != 3);		//true
//!=는 앞의 것과 뒤에 것이 다른지를 비교하는 연산자('다른지?'를 물어보는 연산자)
        
        
console.log(1 != "1");		//false
//!=는 오직 해당 값이 동일한지만 판단한다.
        
        
console.log(1 !== "1");		//true
//!=는 해당 값과 데이터 타입까지 비교한다.(앞의 비교 연산자와 동일 논리)

 

 

  • 부등호 연산자
console.log(3 > 2);		//true
console.log(3 < 2);		//false
console.log(3 >= 2);		//true
console.log(3 <= 2);		//false

 

 

  • Logical 연산자
console.log(3 > 2 && 1 > 2);	//false
//3은 2보다 크고 1은 2보다 큰지? : and 조건 연산자
//(앞,뒤 모두 만족해야 true, 그 외에는 모두 false)


console.log(3 > 2 || 1 > 2);	//true
//3이 2보다 크거나 1이 2보다 큰지? : or 조건 연산자
//(둘 중 하나만 만족해도 true, 둘다 불만족 시 false)
        
        
console.log(!(3 > 2));		//false
//( )안에 값과 반대되는 값을 도출 : ( )값이 true이면, !( )는 false가 된다.
        
        
console.log(!(3 < 2));		//true
//동일 논리

 

 

  • 기타 연산자
1. 문자열 연산자(문자열을 더하기)
var txt1 = "John"
var txt2 = "Kim"
var txt3 = txt1 + " " + txt2;
console.log(txt3);		//John Kim


var txt1 = "John"
var txt2 = "Kim"
txt1 += txt2; 			//txt1 = txt1 + txt2;
console.log(txt1);		//JohnKim


2. 문자와 숫자를 더하는 연산자

var x = 5 + 5;
console.log(x);		//10


var y = "5" + 5;
console.log(y);		//55

//"5"가 문자이므로 뒤에 숫자 5도 문자로 인식하여 두 문자의 합으로 나타난다.
// 두 문자가 더해질 때는 공백없이 나란히 더해진다.
        
        
var z = "Hello" + 5;
console.log(z);		//Hello5

//동일한 원리

댓글