evolve() function
변환 함수에 따라 객체의 얕은 복사본을 재귀적으로 진화시켜 새 객체를 생성합니다.
Signature:
typescript
declare function evolve<
O extends Record<string, any>,
T extends Transformation<O>,
>(transformation: T): (obj: O) => EvolveReturnType<O, T>;Example
ts
const add1String = (a: number) => String(a + 1);
const obj = { a: 1, b: 2, c: { d: 3, e: 4 }, f: true };
const transformation = {
a: add1String,
b: add1String,
c: (obj: { d: number; e: number }) =>
evolve({ d: add1String, e: add1String }, obj),
};
evolve(transformation, obj);
// { a: "2", b: "3", c: { d: "4", e: "5" }, f: true }