[ javascript ] 문자연산, 숫자연산, 증감연산, 대입연산, 비교연산, 삼항연산, if elseif else, switch, for, while, do while
페이지 정보
작성자 웹지기 댓글 0건 조회 2,119회 작성일 21-02-10 23:07본문
문자연산, 숫자연산, 증감연산, 대입연산, 비교연산, 삼항연산, if elseif else, switch, for, while, do while
- 참고동영상 사이트 : https://www.youtube.com/c/드림코딩by엘리/search?query=javascript
1. 문자연산(String concatenation)
console.log('my' + ' cat');
console.log('1' + 2);
console.log(`String literals: 1+2 = ${1 + 2}`);
2. 숫자연산(Numeric operators)
console.log(1 + 1); //add
console.log(1 - 1); //substarct
console.log(1 / 1); //divide
console.log(1 * 1); //multiply
console.log(5 % 2); //remainder
console.log(2 ** 3); //exponentiation
3. 증감연산(Increment and decrement operators)
let counter = 2;
const perIncrement = ++counter;
//counter = counter+1;
//preIncrement = counter;
console.log(`preIncrement:${perIncrement}, counter: ${counter}`);
const postIncrement = counter++;
//postIncrement = counter;
//counter = counter+1;
console.log(`preIncrement:${postIncrement}, counter: ${counter}`);
const preDecrement = --counter;
console.log(`preDecrement : ${preDecrement}, counter : ${counter}`);
const postDecrement = counter--;
console.log(`postDecrement : ${postDecrement}, counter : ${counter}`);
4. 대입연산(Assignment oprators)
let x = 3;
let y = 6;
x += y; // x = x+y;
x == y;
x *= y;
x /= y;
5. 비교연산(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 of equal
6. Logical operators : || (or), && (and), ! (not)
//const value1 = false;
const value1 = true;
const value2 = 4 < 2; //false
//|| (or)
// 아래조건중 하나라도 true가 나오면 다른 문장과 상관없이 true를 반환
// 아래 코드에서 연산이 많은 함수나 조건은 뒤쪽에 나오게 해주는게 좋다.
// 심플한 조건을 먼저 불러서 부하를 막아주는게 효율적인 코드
console.log(`or : ${value1 || value2 || check()}`);
// && (and)
console.log(`and : ${value1 && value2 && check()}`);
// nullableObject && nullableObject.something
// nullableObject가 null 이면 false므로 뒷부분이 실행이 안되므로 다음의 코드로 사용가능
/*
if(nullableObject != null) {
nullableObject.somthing;
}
*/
function check() {
for (let i = 0; i < 10; i++) {
//wasting time
console.log('ㅡㅡ;;');
}
return true;
}
// !(not)
// 값을 반대로 바꿔준다.
console.log(!value1);
7. 비교연산(equality)
const stringFive = '5';
const numberFive = 5;
// == 비교연산 - 타입변경 비교(loose equality, with type conversion)
console.log(stringFive == numberFive);
console.log(stringFive != numberFive);
// === 비교연산 및 타입비교연산(strict equality, no type conversion)
console.log(stringFive === numberFive);
console.log(stringFive !== numberFive);
// object비교연산(object equality by reference)
const test1 = {name : 'test'};
const test2 = {name : 'test'};
const test3 = test1;
console.log(test1 == test2);
console.log(test1 === test2);
console.log(test1 === test3);
//연산 확인
console.log(" br \n");
console.log(0 == false); //true
console.log(0 === false); //false
console.log('' == false); //true
console.log('' === false); //false
console.log(null == undefined); //true
console.log(null === undefined); //false
8. if조건문(Conditional operatiors: if)
// if, else if, else
const name = 'test';
if(name === 'test'){
console.log("값이 같고 타입도 같습니다.");
} else if(name === 'coder'){
console.log('값이 다르거나 타입이 다릅니다.')
} else {
console.log('성립하는 조건이 없습니다.');
}
9. 삼항연산(Ternary operator: ?)
//비교구문?값1:값2(condition) ? value1 : value2);
console.log(name==='test'?'yes':'no');
10. 스위치문(Switch statement)
//다수의 구문을 비교(use for multiple if checks)
//열거되는 값들을 비교(use for enum-like value check)
//다중유효성 검사(use for multifle type checks in TS)
const browser = 'IE';
switch(browser) {
case 'IE':
console.log('아직도 이런걸 사용하나요?');
break;
case 'Chrome':
case 'Firefox':
console.log('좋아요 좋지요');
break;
default:
console.log('머지??');
break;
}
11. 반복문(Loops)
//while반복문 : 조건이 참일 동안 실행
//(while loop, while the condition is truthy, body code is executed)
let i=3;
while(i>0){
console.log(`while : ${i}`);
i--;
}
//do~ while반복문 : do구문은 무조건 한번은 실행되고 while구문의 조건이 거짓일 때까지 반복문 실행
//do while loop, body code is excuted first, then check the condition
do{
console.log(`do while : ${i}`);
i--
} while(i>0);
//for구문(for loop, for(begin; condition; step))
for(i=0; i<3; i++) {
console.log(`for : ${i}`);
}
//2씩 줄여가는 구문
for(let i=10; i>0; i-=2){
console.log(`inline variable for : ${i}`);
}
//2중for문(nestd loops)
for(let i=0; i<5; i++){
for(let j=0; j<5; j++) {
console.log(`i : ${i}, j: ${j}`);
}
}
//break, continue
for(let i=0; i<11; i++) {
if(i%2 !== 0) {
continue;
}
console.log(` i : ${i}`);
}
for(let i=0; i<11; i++){
console.log(`i : ${i}`);
if(i==8){
break;
}
}
※ false : 0, -0, null, '', false, undefined, let obj;
※ true : -1, 'hello', 'false', [], let obj = new Array(), let obj = [], let obj = {}
let num = 1;
if(num){
console.log('true!');
} else {
console.log('false!');
}
//아래 문장을 해석하면 num의 값이 true라면 출력해라로 해석이되며
//if문을 빼고 간단히 적을 수 가 있다.
num && console.log(` num : ${num}`);
let obj = {
name : 'test',
};
obj && console.log(`obj.name : ${obj.name}`);
댓글목록
등록된 댓글이 없습니다.