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);
console.log(1-1);
console.log(1/1);
console.log(1*1);
console.log(5%2);
console.log(2**3);
3. Increment and decrement operators 증가/감소 연산
let counter = 2;
const preIncrement = ++counter;
console.log(`preIncrement : ${preIncrement}, counter: ${counter}`);
const postIncrement = counter++;
console.log(`postIncrement : ${postIncrement}, counter: ${counter}`);
const preDecrement = --counter;
console.log(`preDecrement : ${preDecrement}, counter: ${counter}`);
const postDecrement = counter--;
console.log(`postDecrement: ${postDecrement}, counter: ${counter}`);
4. Assignment operators 할당 연산
let x=3;
let y=6;
console.log(x += y);
console.log(x -= y);
console.log(x *= y);
5. Comparison operators 비교 연산
console.log(10<6);
console.log(10<=6);
console.log(10>6);
console.log(10>=6);
6. Logical Operators : || (or), && (and), !(not)
const value1 = false;
const value2 = 4 < 2;
console.log(`or: ${value1 || value2 || check()}`);
console.log(`and: ${value1 && value2 && check()}`);
function check() {
for (let i = 0; i<10; i++){
console.log('pointlessfunction');
}
return true;
}
console.log(!value1);
7. Equality
const stringFive = '5';
const numberFive = 5;
console.log(stringFive == numberFive);
console.log(stringFive != numberFive);
console.log(stringFive === numberFive);
console.log(stringFive !== numberFive);
const emma1 = { name:'emma', age:3 };
const emma2 = { name:'emma', age:3 };
const emma3 = emma1;
console.log(emma1 == emma2);
console.log(emma1 === emma2);
console.log(emma1 === emma3);
console.log(0 == false);
console.log(0 === false);
console.log('' == false);
console.log('' === false);
console.log(null == undefined);
console.log(null === undefined);
8. Conditional operator : if, else if, else
const name = 'coder';
if(name === 'emma'){
console.log('Welcome, Emma!');
}else if(name === 'coder'){
console.log('You are amazing coder');
}else {
console.log('unknown');
}
9. Ternary operator : condition ? value1 : value2 (앞에 물음표를 붙여 if문을 간단하게 쓰는 연산)
console.log(name === 'coder' ? 'yes' : 'no');
10. Switch statement 스위치문
const browser = 'Chrome';
switch (browser){
case 'IE':
console.log('go away!');
break;
case 'Chrome':
case 'Firefox':
console.log('love you!');
break;
default:
console.timeLog('same all!');
break;
}
11. Loops : false가 나오기 전까지 무한대 출력
let i = 3;
while (i>0){
console.log(`while: ${i}`);
i--;
}
do{
console.log(`do while: ${i}`);
i--;
} while(i>-2);
for(i = 3; i>0; i--){
console.log(`for:${i}`);
}
for(let i = 3; i>0; i = i-2){
console.log(`inline variable for: ${i}`);
}
for(let i = 0; i < 10; i++){
for(let j = 0; j < 10; j++){
console.log(`i: ${i}, j:${j}`);
}
}
for(let i=0; i<11; i++){
if(i%2 !== 0){
continue;
}
console.log(`i: ${i}`);
}
for(let i=0; i<10; i++){
console.log(`i: ${i}`);
if(i==8){
break;
}
}