JavaScriptは配列除去の繰り返しを実現します.

1315 ワード

<script language="javascript" type="text/javascript">
Array.prototype.strip=function()
{
    if(this.length<2) return [this[0]]||[];
    var arr=[];
	document.write("   "+this+"<br/>");
	document.write("    :<br/>");
    for(var i=0;i<this.length;i++)
    {
	    //splice(i--,1)      ,       
        arr.push(this.splice(i--,1));
		document.write("     :"+this+"<br/>");
		document.write("  arr  :"+arr+"<br/>");
        for(var j=0;j<this.length;j++)
        {
			//      arr     
            if(this[j]==arr[arr.length-1])
            {
                this.splice(j--,1);//      
            }
        }
    }
    return arr;
}
var arr=["a",1,"a",1,8,8,1,2,5,4,7,8];
document.write("   "+arr.strip());
</script>
 
 
出力:
元の配列a、1、a、1、8、1、2、5、4、7、8のプロセスは以下の通りである.  元の配列:1、a、1、8、1、2、5、4、7、8  arr配列:a  元の配列:1,8,1,2,5,4,7,8  arr配列:a,1  元の配列:8,2,5,4,7,8  arr配列:a,1,8  元の配列:5,4,7  arr配列:a,1,8,2  元の配列:4,7  arr配列:a,1,8,2,5  元の配列:7  arr配列:a,1,8,2,5,4  元の配列:  arr配列:a、1、8、2、5、4、7は重い後a、1、8、2、5、4、7