array 去除重复
Array.prototype.del =function() { vara = {}, c = [], l =this.length; for(vari = 0; i < l; i++) { varb =this[i]; // for 循环第 1 次:1 // for 循环第 2 次:2 // for 循环第 3 次:"2" // for 循环第 4 次:2 // for 循环第 5 次:3 alert(b); vard = (typeofb) + b; // for 循环第 1 次:number1 // for 循环第 2 次:number2 <--- 重复 // for 循环第 3 次:string2 // for 循环第 4 次:number2 <--- 重复 // for 循环第 5 次:number3 alert(d); // for 循环第 1 次:number1 为 undefined // for 循环第 2 次:number2 为 undefined // for 循环第 3 次:string2 为 undefined // for 循环第 4 次:注意 {} 中已经有了 number2,所以不为 undefined // for 循环第 5 次:number3 为 undefined alert(a[d]); // a[d] 代表将 d 设为 a 的属性,例如 a = {number2},但没有值 if(a[d] === undefined) { // 1, 2, "2", 3 被 push c.push(b); // 这里 = 1 只是给此属性一个值,例如 a = {number2: 1} a[d] = 1; // for 循环第 1 次:{number1=1} // for 循环第 2 次:{number1=1, number2=1} // for 循环第 3 次:{number1=1, number2=1, string2=1} // for 循环第 4 次:因为 number2 存在,此次被忽略 // for 循环第 5 次: // {number1=1, number2=1, string2=1, number3=1} alert(a); } } returnc;} alert([1, 2,"2", 2, 3].del());

浙公网安备 33010602011771号