JavaScript | 배열(array), for 문

Hyeonju L.·2021년 1월 15일
0

JavaScript

목록 보기
4/10

1. Array (배열)

데이터가 있는 배열. 아래에서 "서울", "대전"과 같은 배열의 값 하나하나는 element(요소)라고 하며,
요소 자리에는 string, number, array 모두 올 수 있다.

let cities = ["서울", "대전", "대구", "부산", "광주", "제주도"];
let KOSPI = [2062.82, 2053.2, 2045.92, 2058.82, 2053.12, 2055.7]; 

1) 배열에서 요소 가져오기(index)

배열의 요소는 index(순서)를 가지고 있다.

var anything = ["대전", 1987, ["하나", "둘", 3];

index를 이용하여 배열의 요소를 가져오는 방법

anything[0] = "대전"
anything[2][1] = "하나"

assignments

1) getElement 함수안에 arr 변수를 선언했습니다. arr 변수는 배열을 할당했고 배열에는 다양한 데이터 타입의 요소가 들어있네요!
배열이 담긴 arr 변수에 접근하여 getElement 함수가 "array" 라는 문자열을 return 할 수 있도록 해주세요.

function getElement (){
  let arr = [3, [4, ["array", 9], 2+3], [0]];
  return arr[1][1][0];
}

2 ) addFirstAndLast 함수 안에 작성해주세요.
addFirstAndLast 함수에 주어진 인자 myArray는 숫자 값으로만 이루어진 array 입니다. addFirstAndLast 함수에 주어진 인자 myArray 의 첫번째 element와 마지막 element의 값을 더한 값을 리턴해주세요.
만일 myArray에 한 개의 요소만 있다면 해당 요소의 값을 리턴해 주시고 요소가 없는 비어있는 array라면 0을 리턴해주세요.

function addFirstAndLast (myArray) {
  if (myArray.length === 0) {
  	return 0;
  } 
  else if (myArray.length === 1) {
  	return myArray[0];
  }
  else {
    let totalLength = myArray.length;
    return myArray[0] + myArray[totalLength-1];
  }
}

2) 배열에 요소 추가하기

원하는 위치에 요소 추가

let cities = [];	// cities라는 변수에 빈 배열 할당

cities[0] = "서울";  // cities의 1번째 요소에 "서울" 할당
cities[1] = "대전";  // cities의 2번째 요소에 "대전" 할당
cities[3] = "제주도"; // cities의 4번째 요소에 "제주도" 할당

// cities = ["서울", "대전", undefined, "제주도"]

배열의 시작 또는 끝에 요소 추가

push 배열의 마지막 부분에 요소 추가
unshift 배열의 첫 부분에 요소 추가

let cities = [];
cities.push("경주", "전주");
cities.unshift("인천");

3) 배열의 요소 제거하기

pop 배열의 마지막 요소 제거

let cities = ["경주", "전주", "인천"];
cities.pop();
console.log(cities);	// 결과: cities = ["경주", "전주"]

assignment

divideArrayInHalf 함수를 다음과 같이 구현해주세요.
divideArrayInHalf 함수의 인자인 array는 숫자 값으로만 구성되어 있으며 정확히 총 5개의 요소(element)로 구성되어 있습니다.
array의 요소들 중 10과 같거나 작은 값의 element들은 result의 맨 앞으로,
10보다 큰 값의 요소들은 result의 맨 뒤로 재구성된 배열을 리턴해주세요.
이때, 순서는 array의 맨 뒤의 요소 부터 맨 앞의 요소까지 순차적으로 이루어저야 합니다.

function divideArrayInHalf(array) {
    let result = [];
    for (i=4;i>=0;i--){
      if (array[i]>10){
        result.push(array[i]);
      } else if (array[i]<=10){
        result.unshift(array[i]);
      } 
    } return result; 
}

2. for문

for문의 형태

단순 반복하는 비효율적인 코드를 for 문을 사용하면 원하는 만큼 반복시키고 짧게 줄일 수 있다.

for (반복조건) {
  반복 조건이 맞을 때 실행할 코드
}

예시

let count = 1;
for (let i = 0; i <= 5; i++) {	// i를 0부터 5까지 1씩 증가시키며
  count = count + 1;		// 왼쪽 코드를 실행한다. (i는 1씩 증가하면서 코드는 총 6번 실행됨)
}
// i가 6이 되면 i<=5라는 조건은 false가 되어 {} 코드를 실행시키지 않고 종료된다.

배열의 길이를 모를 때

length 속성 이용하기

cities = ["서울", "대전", ...]
for (var i = 0; i <cities.length;i++) {
	if (cities[i] === home) {
    	alert("아, 여기 사시는군요");
    }
}

assignments

findSmallestElement 함수 구현하기.
findSmallestElement 의 arr 인자는 숫자 값으로만 이루어진 array 입니다.
array 의 값들 중 가장 작은 값을 리턴해주세요. 만일 array가 비어있으면 0을 리턴해주세요.
예를 들어, 다음과 같은 array가 인자(input)으로 들어왔다면:
[20, 200, 23, 1, 3, 9] // 1이 리턴되어야 합니다.

function findSmallestElement (array) {
  if (array.length === 0){
    return 0;
  } 
  else {
    let number = array[0]
    for (i=0;i<array.length;i++) {
      if (number > array[i]) {
        number = array[i];
      } 
    } return number;
  } 
}
profile
What you think, you become. What you feel, you attract. What you imagine, you create.

0개의 댓글