配列内で重複したものをはじくっていう処理を書いたのでメモ。

var array = ['A','A','B','B','C','A','C','D','B'];
var sort = [];
var flag;
sort.push(array[0]);

for(var i = 0; i < array.length; i++){
  flag = true;
  for(var j = 0; j < sort.length; j++){
    if(array[i] === sort[j]){
      flag = false;
    }
  }

  if(flag){
    sort.push(array[i]);
  }
}

console.log(sort);

配列内の値をひとつづつチェックしていって、別の配列にpushする。 array[i]とsort[j]が一致してしまったときはflagにfalseを入れpushしないようにする。

今回はIE8も対応するので使いないけど、ECMAScript 5からArray.filter()という便利なものがあるそうです。

JavaScript - 配列の重複をはじく、もしくは重複を取り出す - Qiita Array.filter - JavaScript | MDN

Array.filter()を使って書き直すと

var array = ['A','A','B','B','C','A','C','D','B'];
var sort = array.filter(function (x, i, self) {
  return self.indexOf(x) === i;
});
console.log(sort);

すごい短くなります。便利!