자바스크립트에서 배열의 요소들 중에 최대 값과 최소 값을 찾는 방법을 소개합니다. 간단한 방법으로는 Math 함수를 사용하여 최대, 최소 값을 찾을 수 있습니다. 또는 for 루프를 사용하여 직접 구현할 수도 있습니다.
1. Math.min.apply(), Math.max.apply() : 배열에서 최대, 최소 값 찾기
Math.min.apply(null, array)는 인자로 전달한 array 배열 요소들 중에 최소 값을 리턴합니다. Math.max.apply()도 같은 방식으로 동작하며 최대 값을 리턴합니다.
const arr = [30, 40, 10, 20];
const min = Math.min.apply(null, arr);
const max = Math.max.apply(null, arr);
console.log(min);
console.log(max);Output:
10
402. Math.min(), Math.max() : 배열에서 최대, 최소 값 찾기
min(num1, num2, ....), max(num1, num2, ....)는 인자로 전달된 숫자 중에 최소, 최대 값을 찾아서 리턴합니다. 인자 개수는 제한이 없습니다.
const min = Math.min(10, 20, 30, 40);
const max = Math.max(10, 20, 30, 40);
console.log(min);  // 10
console.log(max);  // 40이 함수들을 이용하여 배열의 모든 요소를 min(), max()에 전달하면 배열의 최대, 최소 값을 찾을 수 있습니다. 특히, Spread Operator(전개 연산자)를 이용하면 배열의 모든 요소를 쉽게 함수의 인자로 전달할 수 있습니다. Spread Operator는 ...arr와 같은 표현식이며, 배열 arr의 모든 요소를 나열하여 인자로 전달합니다.
아래 예제는 min(), max()와 Spread Operator를 이용하여 최대, 최소값을 찾는 예제입니다.
const arr = [30, 40, 10, 20];
const min = Math.min(...arr);
const max = Math.max(...arr);
console.log(min);
console.log(max);Output:
10
403. for 반복문으로 min, max 함수 구현
아래와 같이 직접 반복문으로 배열을 순회하면서 최소 값과 최대 값을 찾을 수 있습니다. 비교하기 전에 min의 초기값은 Infinity로, max의 초기 값은 -Infinity로 설정하였습니다.
function minOfArray(arr) {
  let min = Infinity;
  for (let i = 0; i < arr.length; i++) {
    if (min > arr[i]) {
      min = arr[i];
    }
  }
  return min;
}
function maxOfArray(arr) {
  let max = -Infinity;
  for (let i = 0; i < arr.length; i++) {
    if (max < arr[i]) {
      max = arr[i];
    }
  }
  return max;
}
const arr = [30, 40, 10, 20];
const min = minOfArray(arr);
const max = maxOfArray(arr);
console.log(min);
console.log(max);Output:
10
40Loading script...
Related Posts
- ESLint warning, Expected '===' and instead saw '==' eqeqeq
 - Javascript - 현재 날짜/시간을 항상 한국 기준으로 가져오기
 - Javascript - 문자열 사이에 문자 넣기
 - Javascript - 버튼 활성화/비활성화 시키는 방법
 - Javascript - 버튼 이름 변경하기
 - Javascript - div 안의 내용 가져오기, 변경, 추가, 삭제
 - Javascript - <ol>, <ul>에 <li> 동적 추가, 삭제
 - Javascript - div 생성, 추가, 삭제 방법
 - Javascript - 테이블 행(tr) 숨기기, 보이기
 - Javascript - div에 링크 거는 방법
 - Javascript - 자식 요소(element) 개수 확인
 - Javascript - 요소(element) 복사, 붙여넣기
 - Javascript - div에 클릭 이벤트(onclick) 설정 방법
 - Javascript - 체크박스 선택/해제 시, 텍스트박스 활성화/비활성화
 - Javascript - input 숫자만 입력받도록 설정
 - Javascript - 자식 노드 모두 제거
 - Javascript - 체크박스 선택, 해제 방법
 - Javascript - input text 값 가져오기
 - JavaScript - 문자열을 배열(Array)로 변환
 - JavaScript - 특정 문자열의 포함 여부 확인 (includes, 정규표현식)
 - JavaScript - 문자열 비교 방법, 5가지
 - JavaScript - 문자열 바꾸기(replace, 정규식 치환)
 - JavaScript - 배열 전체 출력 (for, forEach, for in, for of)
 - JavaScript - 한번만 실행되는 함수 (once: true)
 - JavaScript - 선택된 checkbox 값 가져오기
 - JavaScript - div, 태그 안의 내용 가져오기
 - JavaScript - element(버튼, div) 보이기 숨기기
 - JavaScript - 숫자를 배열로 변경하는 방법
 - JavaScript - 부모, 형제, 자식 element 찾기
 - JavaScript - 클래스 이름으로 element 찾는 방법
 - JavaScript Array find() 함수
 - JavaScript Array splice() 함수
 - JavaScript의 contains() 함수
 - JavaScript sort() 함수, 예제 소개
 - JavaScript - Set 생성 및 초기화