数组

<script type="text/javascript">
console.dir(Array);
//数组中常用的方法都是定义在Array这个类的原型上的,每一个数组都是他的一个实例,所以每一个数组都可以用这些方法
Array.prototype.distinct = function () {
var obj = {};
//this就是当前要操作的那个数组
for (var i = 0; i < this.length; i++) {
var cur = this[i];
if (obj[cur] == cur) {
this.splice(i, 1);
i--;
continue;
}
obj[cur] = cur;
}
return this;
}
var ary = [1, 2, 3, 2, 3, 2, 1, 3, 0, 4, 5, 6, 2, 3, 4, 5, 6, 2, 3, 4, 8, 9, 0, 211, 3, 4, 45];
ary.distinct().sort(function (a, b) {return a - b;});//链式写法
console.log(ary);

/*[].__proto__.distinct=function(){

}*/
Array.prototype.slice=function(){
//思考:原生的slice都实现了那些功能,就实现哪些功能
}

</script>