JSFiddle - React, Tailwind, and code Playground

JavaScript

a = [1, 1, 2, 2, 3, 3];
b = [0, 2, 1, 0, 3, 3];
c = [];
d = [1, 2, 3];
e = [3, 1, 2, 3, 2, 1];
f = [1, 2, undefined, 2, 3, undefined];
g = [];
g[0] = 1;
g[2] = 2;
g[3] = 1;

function uniq(arr) {
    var result = [], e;
    
    for (var i = 0; i < arr.length; i++) {
        e = arr[i];
    
        if (result.indexOf(e) == -1) {
            result.push(e);
        } 
    }
    
    return result;
}

console.log(uniq(a)); // expect [1, 2, 3]
console.log(uniq(b)); // expect [0, 2, 1, 3]
console.log(uniq(c)); // expect []
console.log(uniq(d)); // expect [1, 2, 3]
console.log(uniq(e)); // expect [3, 1, 2]
console.log(uniq(f)); // expect [1, 2, undefined, 3]
console.log(uniq(g)); // expect [1, undefined, 2]