Array.delRepeat = function (arr) {

  var _arr = arr.slice(0),retArr = [];

  for (var i = 0, len = _arr.length; i < len; i++) {

    for (var j = i + 1; j < len; j++) {

      if (_arr[i] == _arr[j]) {
        break;
      }
    }

    if (j == len) {
      retArr.push(_arr[i]);
    }

  }

  return retArr;

}

var _Array = [];
for (var i = 0; i < 1000000; i++) {
  _Array.push(Math.round(10000 * Math.random()));
}
//console.log(_Array);
console.time("Array initialize");
Array.delRepeat(_Array);
console.timeEnd("Array initialize");


重复的越多,执行效率越高,占时间越短


数组元素个数:100万并且元素不大于100时,执行时间约:185.000ms

数组元素个数:100万并且元素不大于1000时,执行时间约:1600.000ms

数组元素个数:100万并且元素不大于10000时,执行时间约:15525.000ms

数组元素个数:100万并且元素不大于100000时,执行时间约:140918.000ms