상세 컨텐츠

본문 제목

Operator

JS

by RRS_SH 2023. 2. 18. 23:42

본문

이 JavaScript는 드림코딩 자바스크립트 기초강의를 보며 정리한 자료 입니다.

https://www.youtube.com/@dream-coding 

 

https://www.youtube.com/@dream-coding

 

www.youtube.com


 

String concatenation

console.log('my' + ' cat');
console.log('1' + 2);

Numeric operators

console.log(1 + 1); // add
console.log(1 - 1); // substract
console.log(1 * 1); // divide
console.log(1 / 1); // multiply
console.log(5 % 2); // remainder
console.log(2 ** 3); // exponentiation

Increment and decrement operators

let counter = 2;
const perIncrement = ++counter;
console.log(`preIncrement: ${perIncrement}, counter: ${counter}`);
// preIncrement: 3, counter: 3

const postDecrement = counter++;
console.log(`postDecrement: ${postDecrement}, counter: ${counter}`);
// postDecrement: 3, counter: 4

// minus도 동일함

Assignment operators

let x = 3;
let y = 6;
x += y; // x = x + y;
x -= y;
x *= y;
x /= y;

Comparison operators

console.log(10 < 6); // less than
console.log(10 <= 6); // less than or equal
console.log(10 > 6); // greater than
console.log(10 >= 6); // greater than or equal

Locical operators

const value1 = false;
const value2 = 4 < 2;

// || (or), finds the first truthy value 하나라도 참이면 된다.
console.log(`or: ${value1 || value2 || check()}`);

// && (and), finds the first falsy value 하나라도 거짓이면 안된다.
console.log(`and: ${value1 || value2 || check()}`);

// ! (not) 
console.log(!value1); // true;

fucntion check() {
	for(let i = 0; i < 10; i++) {
		//wasting time
		console.log('ㅠㅠ');
	}
	return true;
}
or, and 사용하여 분기 처리시 순서배치를 연산을 적개 하는 쪽으로 계산하여 배치한다.

 

Equality

const stringFive = 5;
const numberFive = 5;

// == loose equality, with type conversion 타입을 따지지 않고 비교한다.
console.log(stringFive == numberFive); // true
console.log(stringFive != numberFive); // false

// === strict equality, no type conversion 타입까지 비교한다.
console.log(stringFive === numberFive); // flase
console.log(stringFive !== numberFive); // true

// object equality by reference
const tom1 = { name: 'tom' };
const tom2 = { name: 'tom' };
const tom3 = tom1;

console.log(tom1 == tom2); // false 
console.log(tom1 === tom2); // false
console.log(tom1 === tom3); // true

Conditional operators: if

// if, else if, else
const name = 'tom';
if(name == 'jhon') {
	console.log('Welcome, jhon');
} else if(name === 'coder') {
	console.log('You are amazing coder');
} else {
	console.log('unkwnon');
}

Ternary operator: ?

// condition ? value1 : value2; 삼항 연산자
console.log(name === 'tom' ? 'yes' : 'no');

Switch statement

const browser = 'IE';
switch() {
	case 'IE':
		console.log('go away');
		break;
	case 'Chrome':
	case 'Firefox':
		console.log('love you');
		break;
	default:
		console.log('same all');
		break;
}

Loops

// while
let i = 3;

while (i > 0) {
	console.log(`while: ${i}`);
	i--;
}

// do while
do {
	console.log(`do while: ${i}`);
} while(i > 0);

// for
for (i = 3; i > 0; i--) {
	console.log(`for: ${i}`);
}
Loop를 빠져나오는 명령으로 break, continue가 있다. break: 연산을 끝내고 밖으로 빠져 나온다. continue: 지금 연산을 중단하고 다음 Loop를 실행한다.

 

'JS' 카테고리의 다른 글

Object  (0) 2023.02.20
Function  (0) 2023.02.18
Class  (0) 2023.02.16
Variable  (0) 2023.02.15
async & defer  (0) 2023.02.15

관련글 더보기