Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 배열의 일부를 뒤집는 방법은 무엇입니까?

<시간/>

배열, 시작 인덱스 및 끝 인덱스를 취하는 JavaScript 함수를 작성해야 합니다. 이 함수는 시작 인덱스와 끝 인덱스 사이의 배열 부분을 반전시켜야 합니다.

예를 들어 -

배열이 -

인 경우
const arr = [2, 6, 5, 8, 3, 5, 2, 6, 7];

그리고 시작 인덱스와 끝 인덱스는 각각 3, 7이고 배열은 -

로 반전되어야 합니다.
const output = [2, 6, 5, 2, 5, 3, 8, 6, 7];

예시

다음은 코드입니다 -

const arr = [2, 6, 5, 8, 3, 5, 2, 6, 7];
const start = 3, end = 7;
const reverse = arr => {
   const { length: l } = arr;
   for(let i = 0; i < Math.floor(l/2); i++){
      const temp = arr[i];
      arr[i] = arr[l-i-1];
      arr[l-i-1] = temp;
   };
   return arr;
};
const reverseBetween = (arr, start, end) => {
   const num = Math.min(end - start, arr.length - start);
   arr.splice(start, 0, ...reverse(arr.splice(start, num)));
}
reverseBetween(arr, start, end);
console.log(arr);

출력

이것은 콘솔에 다음과 같은 출력을 생성합니다 -

[
   2, 6, 5, 2, 5,
   3, 8, 6, 7
]