>  기사  >  웹 프론트엔드  >  Number 유형 배열에서 가장 큰 요소를 찾는 JS 메소드

Number 유형 배열에서 가장 큰 요소를 찾는 JS 메소드

亚连
亚连원래의
2018-05-26 13:53:221694검색

이 기사에서는 JS를 사용하여 숫자형 배열에서 가장 큰 요소를 찾는 방법을 주로 소개합니다.

JS를 사용하여 숫자형 배열에서 가장 큰(또는 가장 작은) 숫자를 찾는 방법은 무엇인가요?

아래 4가지 방법을 소개합니다.

1. 라이브러리 함수를 사용하지 않고

코드는 다음과 같습니다.

function findMax1 (arr) {
  let result = 0;
  if (Array.isArray(arr)) {
    for (let i = 0; i < arr.length; i++) {
      result = arr[i] > result ? arr[i] : result;
    }
    
    return result;
  } else {
    console.error(&#39;The parameter arr is not an array&#39;);
    return;
  }
}

설명:

변수 결과를 사용하여 최대값을 저장합니다. 검색할 배열을 순회합니다. 현재 순회하는 요소가 결과보다 큰 경우 이 요소를 결과에 할당합니다.

2. Array.reduce() 사용

코드는 다음과 같습니다.

function findMax2 (arr) {
  let result = 0;
  if (Array.isArray(arr)) {
    result = arr.reduce((a, b) => {
      return a > b ? a : b;
    }, 0);
    
    return result;
  } else {
    console.error(&#39;The parameter arr is not an array&#39;);
    return;
  }
}

설명:

reduce 메서드는 배열의 각 요소와 누산기를 대상으로 하는 함수를 사용합니다. 단일 값으로 배열합니다.

reduce는 두 개의 매개변수를 허용합니다:

첫 번째 매개변수는 앞서 언급한 함수인 콜백입니다. 여기에는 4개의 매개변수가 있습니다:

  1. accumulator: 마지막 콜백 실행의 결과인 Accumulator. initialValue가 제공되면 첫 번째 시간은initialValue입니다.

  2. currentValue: 현재 순회하는 배열의 요소

  3. currentIndex: 0부터 시작하는 현재 순회하는 배열의 요소 인덱스입니다. initialValue가 제공되면 1부터 시작합니다.

  4. 배열: 현재 축소가 적용되는 배열입니다.

두 번째는 초기값으로 콜백 함수의 첫 번째 실행 시 첫 번째 실제 매개변수로 사용되는initialValue입니다. 이는 선택사항입니다. 이 매개변수가 제공되지 않고 빈 배열에 적용되면 오류가 보고된다는 점에 유의하세요.

그러면 위 코드의 의미는 비교를 위해 배열을 순회할 때마다 더 큰 것, 즉 누산기를 유지하고 배열 요소와의 다음 비교에 사용된다는 것입니다. 결국 최대값인 이 값만 남게 된다.

3. Apply 및 Math.max() 사용

코드는 다음과 같습니다.

function findMax3 (arr) {
  let result = 0;
  if (Array.isArray(arr)) {
    result = Math.max.apply(null, arr);
    
    return result;
  } else {
    console.error(&#39;The parameter arr is not an array&#39;);
    return;
  }
}

설명:

apply에 대한 설명은 약간 복잡하므로 더 이상의 설명은 생략하겠습니다.

두 개의 매개변수를 허용합니다. 첫 번째는 thisArg이고 두 번째는 argsArray입니다. 둘 다 선택 사항입니다. 간단히 말해서, 함수를 사용할 때 매개변수는 배열로 전달됩니다.

4 그냥 Math.max()를 사용하세요

코드는 다음과 같습니다.

function findMax4 (arr) {
  let result = 0;
  if (Array.isArray(arr)) {
    result = Math.max(...arr);
    
    return result;
  } else {
    console.error(&#39;The parameter arr is not an array&#39;);
    return;
  }
}

설명:

이전 솔루션의 아이디어를 바탕으로 ES6에서는 스프레드가 있습니다. 연산자 (...) 는 배열의 요소를 쉼표로 구분된 시퀀스로 구분할 수 있습니다. Math.max() 함수의 요구 사항을 충족합니다.

JS

1에서 숫자, 수학 및 배열과 관련된 지식 포인트를 소개하고 싶습니다.

숫자 객체 생성 방법:

방법 1:

var 변수 = 새 숫자(숫자)

방법 2:

var 변수 = 숫자

일반적으로 사용되는 방법:

toString () 숫자를 지정된 기본 형식의 문자열로 변환합니다. (숫자를 입력하면 숫자로 변환됩니다. number.toString(2))

toFixed()는 소수점 자리가 유지되도록 지정하고 반올림 기능도 있습니다.

2, Math 

Math 객체의 일반적으로 사용되는 방법:

ceil 반올림

floor() 반내림

random() 난수 방법 // 생성된 의사 난수는 0과 1 사이입니다. (0 포함, 1 제외),

반올림

3. 배열 배열 객체:

배열 생성 방법 1:

var 변수 이름 = new Array();

방법 2:

var 변수 이름 = new Array(length)는 지정된 길이의 배열 객체를 생성합니다.

방법 3:

var 변수 이름 = new Array("Element 1", "Element 2"...); 배열의 요소를 지정하여 배열 개체를 만듭니다.

방법 4:

var 변수 이름 = ["요소 1", "요소 2"...];

배열에 대한 참고 사항:

1 배열의 길이는 JavaScript에서 변경될 수 있습니다.

var arr = new Array(); //创建了一个长度为0的数组对象。
arr[100] = 10;
document.write("arr长度:"+arr.length+"<br/>");
var arr2 = new Array("狗娃","狗剩","铁蛋");
arr2 = ["狗娃","狗剩","铁蛋","张三"];
document.write("arr2长度:"+arr2.length+"<br/>");

3.1 숫자 방식

a、concat把arr1与arr2的数组元素组成一个新的数组返回。  
arr1 = arr1.concat(arr2);

b, Join은 지정된 구분 기호를 사용하여 배열의 요소를 문자열로 조합하고 반환합니다.

var elements = arr1.join(",");

c, pop: 배열의 마지막 요소를 제거하고 해당 요소를 반환합니다.

d, push: 배열에 새 요소를 추가하고 배열의 새 길이 값을 반환합니다.

arr1.push("你好");

e, reverse(); 배열의 요소를 뒤집습니다.

f, 슬라이스는 배열의 시작 인덱스 값과 끝 인덱스 값을 지정하여 배열의 요소를 가로채고 하위 배열을 반환합니다. (헤더는 포함하고 테일은 포함하지 않음)

var subArr = arr1.slice(1,2);


g, 정렬 정렬, 정렬 시 정렬 방법을 반드시 전달해야 합니다. (통과되지 않은 경우 기본값은 ASCII 테이블에 따라 정렬)

arr1 = [19,1,20,5];
arr1.sort(sortNumber); //排序,排序的时候一定要传入排序的方法。
function sortNumber(num1,num2){ 
return num1-num2;
}

h, splice의 첫 번째 매개변수는 요소 삭제를 시작할 인덱스 값, 두 번째 매개변수는 삭제된 요소 수, 후속 데이터가 삽입됩니다(생략 가능).

arr1.splice(1,1,"张三","李四","王五");

위 내용은 모든 사람을 위해 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

응답 콘텐츠 길이를 가져오는 Ajax 메서드

페이지의 특정 콘텐츠에 대한 정기적인 업데이트를 구현하는 Ajax 메서드

속성 리소스 파일 데이터를 읽는 ajax 메서드

위 내용은 Number 유형 배열에서 가장 큰 요소를 찾는 JS 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.