Skip to content

rearg

INFO

이 함수는 호환성을 위한 es-toolkit/compat 에서만 가져올 수 있어요. 대체할 수 있는 네이티브 JavaScript API가 있거나, 아직 충분히 최적화되지 않았기 때문이에요.

es-toolkit/compat에서 이 함수를 가져오면, lodash와 완전히 똑같이 동작해요.

func 함수에게 주어지는 인자의 순서를 바꾸는 새로운 함수를 생성해요.

indices 배열이 나타내는 인덱스에 따라서 인자의 순서가 바뀌어요. 예를 들어서, indices[2, 0, 1] 이라면, 새 함수의 첫 번째 인자는 세 번째 인자로, 두 번째 인자는 첫 번째 인자로, 세 번째 인자는 두 번째 인자로 주어져요.

인터페이스

typescript
function rearg<F extends (...args: any[]) => any>(
  func: F,
  ...indices: Array<number | number[]>
): (...args: any[]) => ReturnType<F>;

파라미터

  • func (F): 인수를 재배열할 함수예요.
  • indices (Array<number | number[]>): 배열된 인수 인덱스예요.

반환 값

((...args: any[]) => ReturnType<F>): 새로운 함수를 반환해요.

예시

typescript
import { rearg } from 'es-toolkit/compat';

const greet = (greeting: string, name: string) => `${greeting}, ${name}!`;
const rearrangedGreet = rearg(greet, 1, 0);
console.log(rearrangedGreet('World', 'Hello')); // Output: "Hello, World!"

MIT 라이선스에 따라 배포됩니다.