Array.uniq()

まだ練る

by ethertank

HTML

<p>Modify from : <a href="https://gist.github.com/521923" title="jcf's gist: 521923 — Gist">jcf's gist: 521923 — Gist</a></p>

JavaScript

Array.prototype.uniq || (Array.prototype.uniq = function() {
    for(var i = 0, l = this.length, r = []; i < l; ++i)
        r.indexOf(this[i]) === -1 && r.push(this[i]);
    return r;
});

var a = [];

a = [1, 2, 3, 4, 1, 2, 3, 4, 1, 1, 5, 6, 2, 3, 7, 8, 8, 8, 9];
document.body.innerHTML += a.uniq() + "<br />" + a + "<br />"; //動作及び非破壊チェック

a = [];
document.body.innerHTML += a[0] + " " + a.uniq()[0] + "<br />"; //空の配列の場合