반응형
1. Numeric Operators
console.log(1 + 1); //add
console.log(1 - 1); //subtract
console.log(1 / 1); //divide
console.log(1 * 1); //multifly
console.log(5 % 2); //remainder
console.log(2 ** 3); //exponentiation -> 2의 3승
2. Increment and Decrement Operators
- PreIncrement
let counter = 2;
const preIncrement = ++counter;
//same as
//counter = counter + 1;
//preIncrement = counter;
console.log(`preIncrement: ${preIncrement}, counter: ${counter}`);
- PostIncrement
const postIncrement = counter++;
//same as
//postIncrement = counter;
//counter = counter + 1;
console.log(`postIncrement: ${preIncrement}, counter: ${counter}`);
const preDecrement = --counter;
console.log(`preDecrement: ${preDecrement}, counter: ${counter}`);
const postDecrement = counter--;
console.log(`postDecrement: ${postDecrement}, counter: ${counter}`);
3. Assignment Operators
let x = 3;
let y = 6;
x += y; ///x = x + y
x -= y;
x *= y;
x /= y;
4. Comparison Operators
console.log(10 < 6);
console.log(10 <= 6);
console.log(10 > 6);
console.log(10 >= 6);
5. Logical Operators
function check() {
for (let i = 0; i < 10; i++) {
//wastng time
console.log("😼");
}
return true;
console.log(`and: ${value1 && value2 && check()}`);
}
const value1 = false;
const value2 = 4 < 2;
OR (||)
finds the first truthy value
or 연산을 수행할 때, JS는 앞에서 부터 확인하면서 true인 아이가 있다면 바로 true를 리턴해버린다,그렇기 때문에 왼쪽에 있을 수록 가볍고, 오른쪽에 둘 수록 무거운 친구들을 두는 것이 좋음!
console.log(`or: ${value1 || value2 || check()}`);
AND (&&)
finds the first falsy value
console.log(`and: ${value1 && value2 && check()}`);
NOT (!)
console.log(!value1);
6. 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); //false
console.log(stringFive !== numberFive); //true
Object Equality by reference
sieun1 and sieun2 are having different ref value
but sieun3 is pointing at same ref as sieun1
const sieun1 = { name: "sieun" };
const sieun2 = { name: "sieun" };
const sieun3 = sieun1;
console.log(sieun1 == sieun2); //false
console.log(sieun1 === sieun2); //false
console.log(sieun1 === sieun3); //true
7. Equality Puzzler
//0은 false로 간주되지만, 타입은 boolean type 이 아니다.
console.log(0 == false); //t
console.log(0 === false); //f
console.log("" == false); //t
console.log("" === false); //f
console.log(null == undefined); //t
console.log(null === undefined); //f
If, Else if, Else
const name = "sieun";
if (name == "sieun") {
console.log("Welcome Sieun!");
} else if (name === "coder") {
console.log("You are an amazing Coder");
} else {
console.log("unknown");
}
8. Ternary Operator: ?
condition? Value1: value2;
console.log(name === "sieun" ? "yes" : "no");
9. Switch Statement
for multiple checks, for enum-like value check, for multiple type checks in TS
const browser = "IE";
switch (browser) {
case "IE":
console.log("Go Away");
break;
case "Chrome":
case "FireFox":
console.log("Love Ya");
break;
default:
console.log("Same All!");
break;
}
10. Loops
While Loop
while the condition is truthy,body code is executed.
let i = 3;
while (i > 0) {
console.log(`while: ${i}`);
i--;
}
Do While Loop
body code is executed first,then check the condition
do {
console.log(`do while: ${i}`);
i--;
} while (i > 0);
for (i = 3; i > 0; i++) {
console.log(`for: ${i}`);
}
Inline variable Declaration
for (**let i = 3**; i > 0; i = i - 2) {
console.log(`inline variable for : ${i}`);
}
Nested Loops :O(n^2)
for (let i = 0; i < 10; i++) {
for (let j = 0; j < 10; j++) {
console.log(`i;${i}, j:${j}`);
}
}
👍 해당 포스트는 드림코딩 엘리의 유투브 강의를 보고 정리한 내용입니다.
반응형
'Computer Language 🗣 > JavaScript' 카테고리의 다른 글
[Javascript] 자바스크립트 문자 정렬에 대한 모든 것 (sort, localeCompare ⭐️ ) (3) | 2024.11.13 |
---|---|
[JavaScript] Arrow Function, 함수의 선언과 표현 (0) | 2021.08.11 |
[Javascript] 데이터 타입 (0) | 2021.08.10 |
[Javascript] 콘솔 출력 && async와 defer의 차이점 (0) | 2021.08.10 |
[JavaScript] Javascript: 브라우저의 역사 (0) | 2021.08.10 |
댓글