JS - Array, For/TIL - 3


Array


配列を使用すると、数千個の変数を生成することなく、1つの変数にすべてのデータを含めることができます.
配列は角括弧([    ] )包まれている.


let anything = ["주지홍", 2021, ["한창민", "석태림", 2]];
絶対に重要だ!配列のインデックスは1ではなく、0から始まります.
アレイデータへのアクセス->ArrayName[インデックス]
anything[0]=朱智紅
anything[1] = 2021
anythine[2]=[「韓昌ミン」、「石泰林」、2]
문제 1 : 배열이 담긴 arr 변수에 접근하여 getElement 함수가 "array" 라는 

문자열을 return 할 수 있도록 해주세요.

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

console.log(getElement()); // "array"
문제 2 : addFirstAndLast 함수에 주어진 인자 myArray는 숫자 값으로만 이루어진 array 입니다.

addFirstAndLast 함수에 주어진 인자 

myArray 의 첫번째 element와 마지막 element의 값을 더한 값을 리턴해주세요.

myArray에 한 개의 요소만 있다면 해당 요소의 값을 리턴

요소가 없다면 비어있는 array라면 0을 리턴해주세요. 

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

console.log(addFirstAndLast([4,5,6])); // 10
配列の最後のインデックスを抽出する方法は、インデックスの順序は0ですが、配列の長さは1からなので、配列の長さから1を減算すればいいです.順番は配列長さが0からなので2以上の/1、残りはすべて0だと思います.

Forステートメント


簡単な繰り返しを減らすために、
문제 3 : findSmallestElement 함수를 구현해 주세요.

findSmallestElement 의 arr 인자는 숫자 값으로만 이루어진 배열입니다.

arr 의 값들 중 가장 작은 값을 리턴 해주세요.

만일 arr 가 비어있으면 0을 리턴 해주세요.

function findSmallestElement(arr) {
  if (arr.length === 0) {
    return 0;
  } else {
    let arrMin = arr[0];
    for(let i = 0; i < arr.length; i++) {
      if (arr[i] <= arrMin) {
        arrMin = arr[i];
      }      
    } return arrMin;   
  }
}
3番目の質問に答えるときは、まず、空の配列について、0を返す値をif文に整理し、他の配列でFor文を使用するべきだと思います.したがって,任意の数字からなる配列では,1つのインデックス値を任意の最小値に設定し,比較を続け,少ない場合は新しい対応する値で代用すべきであると考えられる.
function findSmallestElement(arr) {
  if (arr.length === 0) {
    return 0;
  }
  else {
    return Math.min(...arr);
  }
}    
Math.与えられたmin(..arr)の最小値の関数が分かれば、より容易に求めることができる.
pushは、配列の最後の部分(すなわち末尾)に要素を追加します.
unshiftは、配列の先端、すなわち上部に要素を追加します.
2種類の配列操作方法
  • Indexによる
  • へのアクセスおよび変更または追加
  • push、unshiftメソッドに追加
    popは最後の要素を削除し、最後の要素の値を返します.
  • 문제 4 : divideArrayInHalf 함수를 다음과 같이 구현해주세요.
    
    divideArrayInHalf 함수는 array를 인자로 받습니다. 
    
    이 array는 숫자 값으로 만 구성되어 있으며 총 5개의 요소(element)들로 구성되어 있습니다.
    
    divideArrayInHalf 함수는 인자로 들어온 array 로 부터 새롭게 구성된 배열 result 을 리턴합니다.
    
    array 요소들 중 10과 같거나 작은 값의 요소들은 result의 맨 앞으로, 10보다 큰 값의 
    
    요소들은 result의 맨 뒤로 재구성된 배열을 리턴 해주세요.
    
    배열의 뒷 요소 부터 재구성을 진행해주세요.
    
    function divideArrayInHalf(arr) {
        let result = [];
        for (let i = arr.length-1; i >= 0; i--) {
          if (arr[i] > 10) {
            result.push(arr[i])
          } else {
            result.unshift(arr[i])
          } 
        } return result;   
    }
    
    解答小贴士:并べる顺番は1つの数字を基准にして前后に并べるので、この部分は混乱しています.ノートの上で任意に1つの配列を組織して、書きながら解いて、難しくありません.