블로그 보관함

2014년 2월 27일 목요일

JavaScript 04 배열과 반복문

<script>
  "use strict";
   배열 : 값들의 목록
   [값, 값, 값]
   new Array(값, 값, 값)
   var scores = [ 100, 99, 98, 80, 100 ];
   console.log(scores); //return [100, 99, 98, 80, 100]
   console.log(scores[0], scores[1], scores[2], scores[3], scores[4],
   scores[5]); //return 100 99 98 80 100 undefined
   console.log(scores.length); //return 5

   Array.prototype.pop() <<< 마지막 항목을 배열에서 추출한다.
   console.log('pop()-------------');
   console.log(scores.pop()); //return 100
   console.log(scores); //return [100, 99, 98, 80]

   Array.prototype.push()  <<< 배열에 항목 추가
   console.log('push()------------');
   scores.push(200);
   scores.push(300);
   scores.push(400, 500, 600);
   console.log(scores); //return [100, 99, 98, 80, 200, 300, 400, 500, 600]

   간단한 방법으로 항목 추가하기
   var scores2 = [ 100, 100 ];
   console.log(scores2.length); //return 2
   scores2[1] = 98;
   console.log(scores2); //return [100, 98]

   scores2[2] = 80;
   console.log(scores2); //return [100, 98, 80]

   scores2[10] = 50;
   console.log(scores2.length, scores2); //return 11 [100, 98, 80, 10:50]

   ***다른 유형의 값들을 섞어서 저장할 수 있다.***
   var scores3 = [ '국어', 100, '영어', 80, true, {
      name : '오호라',
      age : 30
      }, function() {
   }, 3.14 ];

   반복문을 사용하여 배열 출력
   console.log('반복문을 이용한 배열 출력-----------');
   for 문
   for(인덱스 변수 초기화; 반복조건; 인덱스값 증가 혹은 감소) 반복할 명령어;
   for(...){명령어;명령어;명령어;...}
   권장사항 : 하나의 명령어라도 실수를 없애기 위해 중괄호{}로 감쌀 것
   참고 : 배열의 개수 7이면, index는 0 ~ 6
   for (var i = 0; i < scores3.length; i++) {
     console.log(scores3[i]);
   }

   console.log('for문 2--------------');
   var i = 0;
   for (; i < scores3.length; i++) {
      console.log(scores3[i]);
   }

   console.log('for문 3--------------');
   var i = 0;
   for (; i < scores3.length;) {
      console.log(scores3[i]);
      i++;
   }

   while : 반복 문법
   while(조건) 명령문;
   while(조건) {명령;명령;명령;..}
   console.log('while----------------------');
   var i = 0;
   while (i < scores3.length) {
      console.log(scores3[i]);
      i++;
   }

   반복문 탈출 명령어 : break
   - 현재 속해 있는 가장 가까운 반복문을 탈출한다.
   console.log('while 2 ----------------------');
   var i = 0;
   while (true) {
      if (i >= scores3.length)
         break;
      console.log(scores3[i]);
      i++;
   }

   문제 : scores3의 값을 출력하는데, 단 문자열과 객체는 제외 while 문 사용
   console.log('숫자만 출력하기 ----------------------');
   var i = 0;
   while (i < scores3.length) {
      if (typeof (scores3[i]) == 'number') {
         console.log(scores3[i]);
      }
   /* console.log(typeof(scores3[i])); */
   i++;
   }

   for .. in : 
   배열일 경우 -> 순차적으로 배열의 index를 뽑아줌
   객체일 경우 -> 순차적으로 값을 뽑아줌
   for (var 변수 in 배열 또는 객체) {명령문; 명령문; 명령문; ..}
   console.log('for..in 사용------------------');
   for ( var i in scores3) {
      console.log(scores3[i]);
   }

   do.. while : 선 실행 후 반복 조건 검사 - 무조건 1번은 실행
   console.log('do.. while 문----------------');
   var i=0;
   do{
      console.log(scores3[i]);
         i++;
   } while (i<scores3.length);
</script>

댓글 없음:

댓글 쓰기