자바스크립트 연산자, 조건문, 반복문

·2021년 8월 14일

javascript basics

목록 보기
1/2

1. 연산자(operator)

종류

1) 할당 연산자
2) 비교 연산자
3) 산술 연산자
4) 비트 연산자
5) 논리 연산자
6) 문자열 연산자
7) 조건 (삼항) 연산자
8) 쉼표 연산자
9) 단항 연산자
10) 관계 연산자

2) 비교 연산자

이때 사전지식! 비교연산자가 있을 때는, 비교연산자 기준으로 왼쪽/오른쪽 나눠서 코드를 실행한다. ()가 필요 없을 수도 있다

동치 연산자(==, ===, !=, !==)

다양한 data type끼리도!! (ex. ==같은 느슨한 비교연산자)

관계 연산자(>, <, >=, <=)

string끼리 - 사전 순서대로
number끼리 - 크기대로

3) 산술 연산자 (arithmetic operator)

  1. 프로그램이 왼쪽에서 오른쪽으로 순차적으로 실행된다는 것을 감안해서, 코드 쓰기
  2. 먼저 실행시키고 싶으면 소괄호 () 사용
  3. data type 다를 경우, 조심!

- +

(일반적인 언어에서는) string타입number타입을 더할 수 없음
:자바스크립트에서는 가능, 하지만 string타입으로 변환됨
:number타입number타입고유의 특성을 살려 연산을 하고 싶으면, 해당 부분에 ()를 쳐서 먼저 실행시키면(?) 됨. 특이하네...

  let stringPlusNumber = "2 더하기 2는 " +  2 + 2;
  console.log(stringPlusNumber); //2 더하기 2는 22
  let stringPlusNumberParenthesis = "2 더하기 2는 " +  (2 + 2);
  console.log(stringPlusNumberParenthesis); //2 더하기 2는 4

- -

- /

- *

- %

- ++

  1. ++ 나중에 연산하기
let num = 1; 
let newNum = num++; //newNum=1, num=2 
//위 코드를 풀어쓴 것
let num = 1;
let newNum = num; //먼저 변수에 변수 할당
num++; //나중에 연산 실행됨
  1. ++ 먼저 연산하기
let num = 1;
let newNum = ++num;
// 위 코드를 풀어쓴 것
let num = 1;
num++; //먼저 연산 실행됨
let newNum = num; //나중에 변수에 변수 할당
> 

- --

5) 논리 연산자 (logical operator)

boolean -> boolean
non-boolean -> non-boolean

truthy / falsy(false, null, NaN, 0, ' ', undefined)

연산자 우선순위(operator precedence)

소괄호로 순서 바꿀 수 있음

or, and는 앞의 것이 true,false면 뒤의 것 실행 안 됨

//or는 앞에서 true 나오면 뒤에 것 실행 안 됨. 헤비한 연산은 제일 뒤로 놓기.

console.log(`or: ${value1 || value2 || check()}`);

function check(){
  for (시간끌게){
       시간끌게
  }
}

예시

a5= 'cat' && 'dog' //t && t returns 'dog'

a8= ' ' && false //f && f returns ' '
a9= false && '' //f && f returns false

왜 뒤의 것

예시

문제 : or 함수를 작성하세요.

  • 인자로 주어진 expression1과 expression2는 boolean 타입입니다.
  • 두 인자가 모두 false인 경우에는 false를 반환하며 그 이외의 경우에는 모두 true를 반환합니다.
    주의)
  • || 연산자를 사용하지 마세요.
  • 대신 !&& 연산자를 사용하세요.
//내풀이 (이상함 ㅠ) (!==와 && 합친 것이 or가 되나?)
function or(expression1, expression2) {
  if (expression1!==true && expression2!==true){
    return false;
  } else {
    return true;
  }
} 

module.exports = { or }

let output = or(true, false); 
console.log(output); // --> true;

let output2 = or(false, false); 
console.log(output2); // --> false;

2. 조건문

반복문 안에 조건문 쓰는 경우 많다

if(){}else{}

conditional

switch

3. 반복문

배열과 사용

for문

구문

//string타입일 경우
for(let i=0; i<sentence.length; i++){
	//반복할 내용
}
//배열일 경우 (배열

for문 괄호 안에서 선언된 변수들은 for문 안에서 (따로 선언 없이 값 재할당해주는 등)쓰일 수 있다

for(let i=0; i<sentence.length;i++){
	if(sentence[i]===filter){
    	findIdx = i;
        break;
    }
//

for loop

for of

iterable objects(배열 등)일 때 사용
더 간단

for of

while

0개의 댓글