给Array本地对象增加一个原型方法,它用于删除数组中重复的元素(可能有多个重复),
返回值是一个包含被删除的重复条目的新数组。
Array.prototype.distinct = function() { var ret = []; for (var i = 0; i < this.length; i++) { for (var j = i+1; j < this.length;) { if (this[i] === this[j]) { //此处splice方法用于删除指定位置的元素,1表示删除个数,返回值为删除元素组成的数组 var del = this.splice(j, 1)[0]; ret.push(del); } else { j++; } } } return ret; } //for test var arr= ['a',"a",'b','c','d','b','a','e']; console.log(arr.distinct());