# TIL JavaScript from Dream Coding(2)

0

## DreamCoding

목록 보기
2/9

### 1. String concatenation

console.log('my'+' cat'); // my cat
console.log('1'+ 2); // 12
console.log(string literals: 1 + 2 = ${1 + 2}); // string literals: 1 + 2 = 3 console.log('amanda\s \n\tbook') // amanda's // book // \ : ' , \n : 세로줄바꿈, \t : tab ### 2. Numeric operators console.log( 1 + 1 ); // add // 2 console.log( 1 - 1 ); // substract // 0 console.log( 1 / 1 ); // divide // 1 console.log( 1 * 1 ); // multiply // 1 console.log( 5 % 2 ); // remainder // 1 console.log( 2 ** 3 ); // exponentiation // 8 ### 3. Increment and decrement operators let counter = 2; const preIncrement = ++counter; // counter = counter + 1; // preIncrement = counter; console.log(preIncrement:${preIncrement}, counter: ${counter}); // preIncrement: 3, counter: 3 const postIncrement = counter++; // postIncrement = counter; // counter = counter + 1; console.log(postIncrement:${postIncrement}, counter: ${counter}); // preIncrement: 3, counter: 4 const preDecrement = --counter; console.log(preDecrement:${preDecrement}, counter: ${counter}); // preDecrement: 3, counter: 3 const postDecrement = counter--; console.log(postDecrement:${postDecrement}, counter: ${counter}); // preIncrement: 3, counter: 2 ### 4. Assignment operators let x = 3; let y = 6; x += y; // x = x + y; x -= y; // x = x - y; x *= y; // x = x * y; x /= y; // x = x / y; ### 5. Comparison operators console.log(10 < 6); // less than // false console.log(10 <= 6); // less the or equal // false console.log(10 > 6); // greater than // true console.log(10 >= 6) // greater than or equal // true ### 6. Logical operators: || (or), && (and), ! (not) const value1 = false; const value2 = 4 < 2; // || (or), finds the first truthy value // 첫번째로 true를 찾으면 나머지 조건은 계산하지 않음 // 연산을 많이하는 함수를 호출하거나 expration 같은 것들은 제일 마지막 조건으로 둔다 console.log(or:${value1 || value2 || check()}); // or: true

// && (and), finds the first falsy value
// 첫번째로 false를 찾으면 나머지 조건은 계산하지 않음
console.log(and: ${value1 || value2 || check()}); // and : false function check() { for (let i = 0; i < 10; i++) { //wasting time console.log('😍') } return true; } // often used to compress long if-statement nullableObject && unllableObject.somthing if (nullableObject != null) { nullableObject.somthing; } // ! (not) console.log(!value1); // true ### 7. 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 const ellie1 = { name: 'ellie' }; const ellie2 = { name: 'ellie' }; const ellie3 = ellie1; console.log(ellie1 == ellie2); // false console.log(ellie1 === ellie2); // false console.log(ellie1 === ellie3); // true // equality - puzzler console.log(0 == false); // true consoel.log(0 === false); // false consoel.log('' == false); // true consoel.log('' === false); // false consoel.log(null == undefined); // true consoel.log(null === undefined); // false ### 8. Conditional operator : if if, else if, else const name = 'df'; if (name === 'amadna') { console.log('Welcome, Amadna!'); } else if (name === 'coder') { console.log('You are amazing coder'); } else { console.log('unknown'); } // unknown ### 9. Ternary operator : ? condition ? value1 : value2; console.log(name === 'amadna' ? 'yes' : 'no'); // no ### 10. Switch statement use for multiple if checks use for enum-like value check use for multiple type checks in TS const browser = 'IE'; switch (browser) { case 'IE': console.log('go away!'); break; case 'Chrome': case 'FireFox': console.log('I love You'); break; default: console.log('same all!'); break; } // go away! ### 11. Loops while loop, while the condition is truthy, body code is executed. let i = 3; while (i > 0) { console.log(while:${i});
i--;
}
// while: 3
// while: 2
// while: 1

do while loop, body code is excuted first,
then check the condition

let i = 3;
while (i > 0) {
console.log(while: ${i}); i--; } do { console.log(do while:${i});
i--;
} while (i > 0);
// while: 3
// while: 2
// while: 1
// do while: 0

#### for loop, for(begin; condition; step)

for (i = 3; i > 0; i++) {
console.log(for: ${i}); } for (let i = 3; i > 0; i = i - 2) { // inline variable declaration console.log(inline variable for:${i});
}

// nested loops
for (let i = 0; i < 10; i++) {
for (let j = 0; j < 10; j++) {
console.log(i: ${i}, j:${j});
}

#### break, continue

Q1. iterate from 0 to 10 and print only even numbers (use continue)

for (let i = 0; i < 11; i++) {
if (i % 2 !== 0) {
continue;
}
console.log(Q1. ${i}); } for (let i = 0; i < 11; i++) { if (i % 2 === 0) { console.log(Q1.${i});
}
}

Q2. iterate from 0 to 10 and print numbers until reaching 8 (use break)

for (let i = 0; i < 11; i++) {
if (i > 8) {
break;
}
console.log(Q2. \${i});
}

DreamCoding Lectures