JavaScript 프로그래밍 기술 향상

Beginner

This tutorial is from open-source community. Access the source code

소개

이 랩에서는 JavaScript 프로그래밍 세계를 탐구하고, 해당 언어에 대한 기술을 향상시키는 작업을 수행할 것입니다. 변수, 데이터 타입, 함수, 루프를 포함하여 언어의 기본 사항을 이해하는 데 도움이 되는 다양한 연습과 프로젝트를 진행할 것입니다. 이 랩이 끝나면 JavaScript 프로그래밍에 대한 탄탄한 기반을 갖추게 되며, 더 복잡한 프로그래밍 과제에 도전할 수 있는 역량을 갖추게 될 것입니다.

정렬된 배열에서 삽입 인덱스 찾기 함수

배열에 값을 삽입하고 정렬 순서를 유지하기 위한 가장 낮은 인덱스를 찾으려면 JavaScript 에서 sortedIndexBy(arr, n, fn) 함수를 사용하십시오.

이 함수는 배열이 내림차순으로 정렬되었는지 대략적으로 확인한 다음, 반복자 함수 fn을 기반으로 적절한 인덱스를 찾기 위해 Array.prototype.findIndex()를 사용합니다.

다음은 sortedIndexBy() 함수의 코드입니다.

const sortedIndexBy = (arr, n, fn) => {
  const isDescending = fn(arr[0]) > fn(arr[arr.length - 1]);
  const val = fn(n);
  const index = arr.findIndex((el) =>
    isDescending ? val >= fn(el) : val <= fn(el)
  );
  return index === -1 ? arr.length : index;
};

객체 배열, 삽입할 값, 그리고 반복자 함수를 사용하여 함수를 호출할 수 있습니다.

예를 들어, sortedIndexBy([{ x: 4 }, { x: 5 }], { x: 4 }, o => o.x)0을 반환합니다. 이는 x 속성을 기준으로 정렬 순서를 유지하기 위해 { x: 4 } 객체를 삽입해야 하는 인덱스입니다.

요약

축하합니다! 함수 기반 정렬된 배열에서 삽입 인덱스 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.