본문 바로가기

웹개발

2022-08-24 국비지원 웹개발 12일차

while, for in, for of, forEach, 내장 함수 등에 대해 배웠다.


1. while

 

while (반복 조건) {

  조건이 만족하면 실행되는 문장.

}

 

while 블록 안에서 반복 조건에 대한 가변을 해주지 않으면 무한 루프에 빠질 수 있으니 주의한다.

 

i가 10보다 작거나 같을 때 반복한다.

sum에 i를 누적해서 더한다.

i를 1씩 더한다.

 

for 문은 A~B까지 범위가 정확하거나 아니면 횟수가 정확한 경우.

즉, 구하고자 하는 값의 조건이 명확한 경우 더 좋다.

while 문은 구하고자 하는 값의 조건이 불명확하거나 유동적인 경우 더 좋다.

예를들어 게임같은 경우 언제 끝낼지 모르니 while 문이 더 좋다.

 

2. do ~ while

 

do {

  조건이 만족하면 실행되는 문장.

} while(조건);

 

while은 조건이 맞지 않으면 한 번도 실행되지 않는 경우가 생기지만

do ~ while은 조건에 관계없이 무조건 한 번은 실행된다.

 

3. for in

 

for (반복 변수 in 객체) {

  ...

}

객체에 저장되어 있는 값을 반복요소까지 전부 다 차례로 가져와 변수에 대입 후 for 문을 반복한다.

 

console.log(인덱스, 배열[인덱스]);

객체 안에 있는 인덱스 값.

변수로 인덱스를 사용한다.

 

4. for of

 

for (반복 변수 of 객체) {

  ...

}

 

객체에 저장되어 있는 값을 반복요소를 제외하고 차례로 가져와 변수에 대입 후 for 문을 반복하낟.

 

console.log(요소);

객체 안에 있는 요소값.

변수로 요소값을 사용한다.

 

for of는 요소값, for in은 인덱스값을 사용.

 

5. forEach

 

배열.forEach (function (값, 인덱스, 배열자신) {

  ...

});

 

배열의 요소를 순차적으로 한번씩 실행한다.

 

위 코드에서

for of는 요소값이 나온다.

for in은 인덱스와 인덱스값이 나온다.

forEach는 현재값, 인덱스, 배열이 나온다.

 

화살표 함수는 function대신 => 를 사용한 것으로 성능은 function과 같다.

 

6. 내장함수

 

(1) eval: 계산식으로 들어온 문자열이나 숫자열을 계산한다.

문자열로 되어 있는 자바스크립트 문장을 실행한다.

 

 

(2) parseInt (str, radix) : 입력된 숫자나 문자를 숫자로 바꾼다.

ex. "1111",2  ->  "1111"을 2진수로 인식한다. 그래서 "1111" 2진수를 10진수로 변환하고 반환한다.  ->  15

반환값은 무조건 10진수 정수이며 소숫점은 날린다.

 

 

(3) parseFloat("문자열"): 문자열을 실수로 변환하여 리턴한다.

 

(4) isFinite(숫자): 숫자로만 이루어져 있는지 판별. ture  ->  숫자로만 이루어져 있음.

 

(5) isNaN(값): 값이 문자인지 판별. Not a Number의 약자로 true  ->  문자로만 이루어져 있음.

ex. adf  ->  true, 123  ->  false, "123"  ->  false

 

(6) toFixed(n): n은 0이상 정수다. 소수점 n의 자리 전까지 반올림 한다.

ex. a=123.456;

a.toFixed(1)  ->  123.4

 

7. 기타

 

윈도우는 파일명의 대소문자를 구분하지 않지만 서버컴퓨터는 거의 리눅스를 사용한다.

리눅스에서는 파일명의 대소문자를 구분하니까 그냥 다 구분해 버릇하는게 좋다.

''과 ""도 구분한다.