while문

while문
특정 조건이 만족하는 동안 코드를 반복적으로 실행한다.
조건식이 참일 경우 코드를 실행한다.

while( 조건식 ) {
	반복적으로 실행할 코드
}

조건식이 만족되지 않으면, 그대로 while문이 종료된다.

continue : 반복문을 제외하고 제일 마지막으로 이동해 다시 반복할지 검사한다.
break : 반복문을 종료한다.

while문 - 실습(1)

var count = 0;
while( count < 10){
    console.log( count );
    count++;
}

while문 - 실습(2)

function solution(n){
    var count = 1;
    var sum=0;
    while( sum ){
       sum = sum + count;
        count++;
    }
    return sum;
}

do while문

do while
조건식을 검사 전에 한번 이상 무조건 실행한다.

do {
	반복적으로 실행하는 코드
} while ( 조건식 );

while : 조건식이 참이지 않으면 한번도 실행되지 않는다
do, while : 조건식이 참이지 않아도 한번 실행되고 나서 종료한다.

for문

for문
반복문 진입 전 초기화 코드 삽입하여 조건 동안 반복문 실행되는 경우 업데이트

for ( 초가화 구문 ; 조건식 ;  업데이트 구문; ) {
	반복 실행하는 코드
}

반복 실행되는 코드는 조건식이 참일 경우에만 실행된다.
초기화코드는 항상 실행
for문 안에서도 continue, break 사용가능
for문에서 continue문을 만나면 업데이트 구문 실행
while문에서 continue문을 만나면 반복실행 코드 끝 이동 후, 조건식 검사

for문 - 실습

var cost = [ 85, 42, 37, 10, 22, 8, 15 ];
var total_cost = 0;
for ( var i = 0; i<cost.length; i++){
    total_cost += cost[i] 
}
console.log(total_cost);

for in문

for in
객체의 각 속성에 대하여 접근한다.

Object.keys(obj) 함수
객체를 인자로 받아 객체 속성의 이름들을 배열로 반환

for in문은 초기화코드나 업데이트코드가 존재하지 않음

for in문 - 실습(1)

var a = 5;
var b = "문자열";
var c = [1,2];

console.log( typeof( a ) );
console.log( typeof( b ) );
console.log( typeof( c ) );

for in문 - 실습(2)

var obj = {
    name: "object",
    age: 10,
    weight: 5
}
var sum = 0;
for ( var prop in obj ){
   if( typeof( obj[prop]) == "number" ){
        sum = sum + obj[prop];
    }
}

console.log("sum :", sum);

변수의 scope

변수의 scope
선언된 변수가 어느 위치에서 유효한지 확인

자바스크립트 변수의 scope가 function scope를 따른다
어떠한 객체가 선언되었을 때, 그 선언된 함수 안에서만 접근이 가능하다.

변수의 shadowing

변수의 shadowing
서로 다른 함수에서 같은 변수를 선언했을 때 발생하는 효과

함수 안에서 밖에 사용한 변수와 같은 이름을 사용할 경우
함수 안에서 해당 함수의 변수를 사용한다

함수 안에서 값을 유지하고 사용할때는 함수안에 변수를 선언하고 사용한다

여러 함수에서 사용할때는 함수를 포괄하는 곳에서 선언하고 사용한다.

변수의 shadowing - 실습

function printTimesTable(a){
    for( i = 1 ; i <= 9 ; i++ ){
        console.log( a + " * " + i + " = " + a*i );
    }
}

for( var i = 2 ; i <= 9 ; i++ ){
    printTimesTable(i);
}

method, this

method
객체속성의 값으로 함수가 들어간다.

함수 안 this 키워드
this는 예약어이다.
함수가 불렸을 때 어떤 객체의 파일들의 속성으로 불렸는지 알 수 있게 해준다.

closure (클로저)

closure
함수와 함수가 선언될 때 environment로 이루어져있다.

평균 구하기

function solution(arr) {
  let answer = 0;
  for(let i = 0; i < arr.length; i++) {
    answer += arr[i];
  }
  return answer / arr.length;
}

완강인증


0개의 댓글