Operator
► String concatenation
<script>
console.log('my' + 'cat');
console.log('1' + 2);
console.log(`string literals: 1 + 2 = ${1 + 2}`);
</script>
► Numeric operators
<script>
console.log(1 + 1);
console.log(1 - 1);
console.log(1 / 1);
console.log(1 * 1);
console.log(5 % 2);
console.log(2 ** 3);
</script>
► Increment and decrement operators
<script>
let conter = 2;
const preIncrement = ++conter;
const postIncrement = conter++;
</script>
► Assignment operators
<script>
let x = 3;
let y = 6;
x += y;
x -= y;
x *= y;
x /= y;
</script>
► Comparison operators
<script>
console.log(10 < 6)
console.log(10 <= 6)
console.log(10 > 6)
console.log(10 >= 6)
</script>
► logical operators: ||(or), && (and), ! (not)
<script>
const value1 = false;
const value2 = 4 < 2;
console.log(`or: ${value1 || value2 || check()}`);
console.log(`or: ${value1 && value2 && check()}`);
function check(){
for (let i = 0; i < 10; i++){
console.log('HI');
}
return true;
}
console.log(!value1);
</script>
► Equality
<script>
const stringFive = '5';
const numberFive = 5;
console.log(stringFive == numberFive);
console.log(stringFive != numberFive);
console.log(stringFive === numberFive);
console.log(stringFive !== numberFive);
const nakwon1 = { name : 'nakwon'};
const nakwon2 = { name : 'nakwon'};
const nakwon3 = nakwon1;
console.log(nawon1 == nakwon2);
console.log(nawon1 === nakwon2);
console.log(nawon1 === nakwon3);
console.log(0 == false);
console.log(0 === false);
console.log('' == false);
console.log('' === false);
console.log(null == undefined);
console.log(null === undefined);
</script>
► Conditional operators: if
if, else if , else
<script>
const name = 'nakwon';
if(name === 'nakwon'){
console.log('hello, nakwon!');
} else if (name === 'coder'){
console.log('You are amazing coder');
} else{
console.log('unkwon');
}
</script>
► Ternary operator : ?
condition ? value1 : value2;
짧은 경우에만 쓰는것이 좋고 길다면 if나 switch문을 쓰는게 좋다
<script>
console.log(name === 'nakwon' ? 'yes' : 'no');
</script>
► Switch statement
if에서 else if가 많이 반복된다면 switch문 사용을 고려하는것이 좋다.
나중에 type script에서 정해져있는 타입을 검사하거나 할떄는 Switch를 쓰는것이 가독성이 좋다.
<script>
const browser = 'IE';
switch(browser) {
case 'IE':
console.log('go away!');
break;
case 'Chrome':
console.log('love you!');
break;
default:
console.log('go away!');
break;
}
</script>
► Loops
► while loop
statement가 false로 나오기 전까지는 무한대로 계속 도는것을 말한다.
<script>
let i = 3;
while(i > 0){
console.log(`while: ${i}`);
i--;
}
</script>
► do while loop
먼저 블럭을 실행한 다음에 조건이 맞는지 안맞는지 검사를 한다.
<script>
do{
console.log(`do while: ${i}`);
i--;
} while (i > 0);
</script>
► for loop, for(begin; condition; step)
<script>
for (i = 3; i > 0; i--){
console.log(`for:${i}`);
}
for (i = 3; i > 0; i--){
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}`);
}
}
</script>
break , continue
► continue를 활용하여 0부터 10까지의 숫자를 짝수인 아이들만 출력해보자.
<script>
for(let i = 0; i < 11; i++){
if(i % 2 !== 0){
continue;
}
console.log(`Q1. ${i}`);
}
</script>
► 0부터 10까지를 looping 하는것을 작성하되 숫자 8을 만나면 그만하는 것을 작성해보자
<script>
for(let i = 0; i < 11; i ++){
if(i > 8){
break;
}
console.log(`Q2. ${i}`);
}
<script>