Remove duplicate values
Keep the first occurrence of each value, in its original order.
function unique(values) { return [...new Set(values)]; }
Input & expected output
Input
[
"[email protected]",
"[email protected]",
"[email protected]",
"[email protected]"
]Expected output
[
"[email protected]",
"[email protected]",
"[email protected]"
]The edge case
Input
[
{
"id": 1
},
{
"id": 1
}
]Expected output
[
{
"id": 1
},
{
"id": 1
}
]Know the limits
- Set compares objects by reference. Two separately created objects are not duplicates.
- Values use SameValueZero equality; this is not deep deduplication.
The function above is the implementation used by the lab. The lab validates JSON types and caps size before execution; include equivalent validation when accepting untrusted input in your application.
Source & maintenance
Based on Remove duplicate values in an array from the original 1loc collection by Nguyen Huu Phuoc. Copyright (c) 2020 phuoc-ng. MIT licensed.
Curated implementation; explicit input bounds, edge cases, local fixtures and rebuilt presentation. Original MDX retained as inert source evidence.
Maintained by Oveyon. Source commit: 14b481cf60df. Read the license.
Keep exploring
- Clone an array — Create a new array without copying the objects inside it.
- Flatten a nested array — Turn a nested array into one sequence of values.
- Split an array into chunks — Build consecutive chunks without changing the original array.