[JavaScript]연산
업데이트:
문자열 연결
console.log('my' + ' cat'); // my cat
console.log('1' + 2); // 12
console.log(`string literals: 1+2 = ${1+2}`); //string literals: 1+2 = 3
// ` `를 사용해서 출력할 경우, ``안의 모든 내용이 문자열로 변경돼서 출력된다. ${}를 이용하면 변수 값을 계산해서 String으로 포함해준다.
산수 연산자
console.log(1 + 1); // 2
console.log(1 - 1); // 0
console.log(1 / 1); // 1
console.log(1 * 1); // 1
console.log(5 % 2); // 1
console.log(2 ** 3); // 8
**
은 지수를 의미한다
2**3 = 2의 3승
증가, 감소연산자(++,–)
let counter = 2;
const preIncrement = ++counter; // 전위 증가
const postIncrement = counter++; // 후위 증가
const preDecrement = --counter; // 전위 감소
const postDecrement = counter--; // 후위 감소
대입 연산자(=)
let x=3;
let y=6;
x += y;
x -= y;
x *= y;
x /= y;
비교 연산자
A < , > , <= , >=
B
논리 연산자
(or), && (and), !(not) |
-
(or)
모든 값 중 하나라도 true 값이 있다면 true를 반환한다.
첫 값이 true가 나오면 더 이상 실행하지 않고 무조건 true를 반환한다.
그렇기 때문에 가장 간단한 연산을 맨 처음에 두고, 복잡한 연산은 가장 마지막에 두는 것이 효율적이다.
- && (and)
모든 값이 true여야 true를 반환한다.
첫 값이 false라면 더이상 실행하지 않고 무조건 false를 반환한다.
그렇기 때문에 가장 간단한 연산을 맨 처음에 두고, 복잡한 연산은 가장 마지막에 두는 것이 효율적이다.
object가 null 이면 false를 반환하기 때문에 &&연산자는 null 체크 시에도 많이 사용된다.
- ! (not)
값을 반대로 바꿔준다.
비교 연산자(==,!=, ===, !==)
const stringFive = '5';
const numberFive = 5;
console.log(stringFive == numberFive); // true
console.log(stringFive != numberFive); // false
console.log(stringFive === numberFive); // false
console.log(stringFive !== numberFive); // true
==,!== : 타입을 변경해서 안의 내용만 비교한다.
===, !== : 타입을 그대로 두고 비교한다.
코딩할 때 웬만하면 ===,!== 를 이용해서 비교하는 게 좋다.
if , else if, else 문
const name = 'boryung';
if(name==='boryung'){
console.log('Welcome, boryung');
}else if(name==='coder'){
console.log('Welcome, coder');
}else{
console.log('unknown');
}
if()의 조건을 만족하면 {}안의 코드를 수행한다.
if() 조건을 만족하지 않다면 else if()의 조건을 확인하고, 만족하면 {}안의 코드를 수행한다.
if,else if 모두 만족하지 않는다면 else의 {}안의 코드를 수행한다.
삼 항 연산자(?)
console.log(name==='boryung' ? 'yes' : 'no');
?앞의 조건이 true라면 yes
: no
조건이 false라면 yes : no
삼 항 연산자를 많이 사용하면 코드의 가독성이 떨어지게 된다.
Switch문
const browser = 'IE';
switch (browser){
case 'IE' :
console.log('go away!');
break;
case 'Chrome' :
console.log('love you!');
break;
default :
console.log('same all');
break;
}
switch() 의 값이랑 동일한 case를 수행한다.
break가 없으면 동일한 case부터 break가 있는 곳까지 수행된다.
일치하는 값이 없으면 default가 수행된다.
while문
let i = 3;
while(i>0){
console.log(`while: ${i}`);
i--;
}
while()의 조건이 false가 될 때까지 반복한다.
do-while문
let i = 0;
do{
console.log(`do while: ${i}`);
i--;
}while(i>0);
무조건 반복문을 한번 실행 후 조건을 판단한다.
for문
for(초기식;조건식;증감식);
처음 초기식으로 시작한 후 , 반복이 될 때마다 증감식을 통해 값을 변경하고 조건을 검사한다.
조건이 true라면 반복하고, false라면 종료한다.
for문 내부에 for문을 작성하게 되면 O(n²)의 복잡도를 갖게 된다.
참고 영상 : 엘리님Youtube
공유하기
Twitter Google+ LinkedIn
댓글남기기