[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Function](https://evolu.dev/docs/api-reference/common/Function) › identity

```ts
function identity<A>(a: A): A;
```

Defined in: [packages/common/src/Function.ts:124](https://github.com/evoluhq/evolu/blob/59dabb7c56c68040b30d3919013adeb2b40bad10/packages/common/src/Function.ts#L124)

Returns the value unchanged.

Useful as a default transformation, placeholder callback, or when a function
is required but no transformation is needed.

### Example

```ts

const values = [1, 2, 3];
const object = { value: 1 };
const getTransform = (shouldDouble: boolean) =>
  shouldDouble ? (value: number) => value * 2 : identity;

assertEqual(values.map(identity), [1, 2, 3]);
assertSame(identity(object), object);
assertEqual(getTransform(false)(2), 2);
```