코로 넘어져도 헤딩만 하면 그만

7일차. 조건문 반복문 본문

CODE STATES 44

7일차. 조건문 반복문

꼬드리 2023. 2. 21. 23:52

if, else, else if 를 활용하는 조건문과 for와 while를 쓰는 반복문을 배웠다. 오늘은 줌이나 페어 프로그래밍 없이 혼자 챕터를 공부하고 문제를 푸는 식이었는데, 그래서 그런지 평소보다 약간 집중이 덜 되는 느낌이었다. 다음에는 이런 시간이 있으면 모각코라도 해야겠다. 

 

 

 

Question

자바스크립트 연산자 우선 순위 순서?

더보기

괄호 - 증감 연산자, not 논리연산자(ex ++ -- !)  - 산술 연산자(ex * / % + -)  - 비교 연산자(ex < <= !== ===) - and/or 논리 연산자(ex && ||) - 대입 연산자(ex = += *=)
순서를 전부 외울 필요는 없지만 필요시 괄호를 적절하게 활용해야 됨.자바스크립트의 비교연산자는 '이항 연산자'이다. 두 개의 항을 대상으로 연산을 수행한다는 뜻이다. 

 

.slice와 .concat의 사용?

더보기

.slice(첫번째 숫자, 두번째 숫자)는 첫번째 숫자부터 두번째 숫자 앞까지 잘라준다. 예시로 "스트로베리".slice(0,3)이면 0부터 시작해서 셌을 때 0부터 3번째인 "베" 앞에 끊어서 "스트로"를 보여준다. 추가로 .slice(0)은 맨 앞에서 끊기기 때문에 "스트로베리"이다.
.concat(d)은 앞의 결과물에 d를 이어붙이는 +와 같은 역할을 한다. 

 

종합퀴즈 중 '함수에 전달된 매개변수의 타입을 확인'하는 문제

더보기

typeof parameter === number 
typeof parameter === 'String'
typeof parameter === 'boolean'
을 주고 이중에 옳게 쓴 것을 고르는 문제였는데, 무슨 의미인지 문제를 이해 못 해서 string를 골랐다 틀렸다. 'String'이 아니라 'string'여야 하는데... 문제의 정답은 'boolean'이고, number도 'number'라고 붙어야 됨. 
어쨌거나 typeof 연산자는 타입을 확인해야 하는 피연산자 앞에 위치하며, 데이터의 타입을 나타내는 문자열을 반환한다. typeof(variable)도 되고 괄호 없이 typeof variable 로도 쓴다. 

 

함수표현식과 함수선언문

더보기

예시부터 보자.

function greeting () { 
console.log('hello') 
};
이건 함수 선언문.

let greeting = function () { 
console.log('hello');
}
이건 함수 표현식이다.

두 개는 같은 결과이지만 다르게 표현할 수 있다. function 함수명(){} 로 표현되면 함수선언문, let 함수명 = function() {} 로 표현되면 함수표현식이라고 말한다. 


차이점으로 함수선언문은 자바스크립트의 특징: '호이스팅'에 따라 위치와 관계 없이 해석될 때 맨 위로 끌어올려진다. 반면 함수 표현식은 정해진 위치에서 유지된다. 이외 함수 표현식은 클로저/인자 전달이 가능하다. 
함수 표현식이 선언문에 비해서 장점이 많고 가독성이 높아 지향된다.

 

for문과 while문 비교분석

더보기

for문은 for (초기값; 조건식; 증감연산){ }이다.

for(let i=0; i< 4; i++){console.log(i)}가 그 예시.
for문은 자신이 구하고자 하는 값이나 반복횟수의 조건이 명확할 경우 사용하며, 가독성이 좋다. 주어진 조건 동안 코드 처리를 반복한다. 

while문은 조건식이 false가 나올 때까지 무한으로 실행한다. 조건이 true인 동안 무한히 실행, false가 되면 즉시 종료된다. 무한루프가 게속되면 브라우저가 과부하되기 때문에 종료 지점이 존재하는지 꼭 체크해야 한다. 
초기식 
while(조건식){
변화식
} 으로 이루어지며, 변수를 사용해 false가 되는 시점을 지정하거나 break문을 사용해 루프를 벗어나게 만들어야 한다. 구하고자 하는 값의 조건을 잘 모르는 유동적인 경우에 주로 사용한다. 값이 아닌 조건으로 문제가 제시되면 while문을 고려해볼 것.

 

 

 

 

  • 주말 즈음에 반복문이랑 조건문 문제를 좀 더 찾아서 풀어봐야겠다. 아직 감이 잘 안 오는데 여러 유형 반복학습이 도움이 될 것 같다는 느낌.
  • if 문은 속도가 느려진다고 한다. 깔끔한 코드를 위해 앞으로 최대한 줄여보려 노력.

'CODE STATES 44' 카테고리의 다른 글

9일차. 계산기 구현  (0) 2023.02.23
8일차. 코플릿 조건문 반복문  (0) 2023.02.22
6일차. JS 변수  (0) 2023.02.20
5.1 주말기록  (0) 2023.02.18
5일차. 계산기 목업 CSS 응용  (1) 2023.02.17
Comments