数组删除的问题
<div   id=msg>  </div>  <BUTTON   ONCLICK=ypadd()> 添加一项 </button>  
  <SCRIPT   LANGUAGE= "JavaScript ">  
  <!-- 
 	   Array.prototype.del=function(n)   {    
 	//n表示第几项,从0开始算起。 
 	//prototype为对象原型,注意这里为对象增加自定义方法的方法。 
 	if(n <0)   //如果n <0,则不进行任何操作。 
 	return   this;    
 	else    
 	return   this.slice(0,n).concat(this.slice(n+1,this.length));    
 	/*   concat方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。     
     这里就是返回this.slice(0,n)/this.slice(n+1,this.length)     
      组成的新数组,这中间,刚好少了第n项。 
 		slice方法:   返回一个数组的一段,两个参数, 
 		分别指定开始和结束的位置。   */    
 } 
 //var   a=[1,2,3,4] 
 //alert(a.del(2)) 
 var   youprice=[]; 
 function   ypadd(){ 
          //   mywin.close(); 
 	youprice.push( '运费__22_33 ') 
 	//$( "#oo_p_n ").val( " "); 
 	//$( "#oo_p_f ").val( " "); 
 	//$( "#oo_p_s ").val( ' '); 
 	pppp(); 
 } 
 function   ypdel(i){               
 	youprice.del(i)  	    
 	pppp() 
 } 
 function   pppp(){     	    
 	var   temp= " <table      width=100%      class=list   cellpadding=0   cellspacing=0>  "; 
 	temp+= " <th> 费用名称 </th>  <th> 应付费用 </th>  <th> 应收费用 </th>  <th> 操作 </th>  "      
    	   for(var   i=0;i <youprice.length;   i++){ 
 			temp+= " <tr>  <td>  "+youprice[i].split( "__ ")[0]+ " </td>  <td>  <input   type=text         name=inpay "+i+ "   id=inpay "+i+ "   value= ' "+youprice[i].split( "__ ")[1]+ " '>  </td>  <td>  <input   type=text   name=inget "+i+ "   id=inget "+i+ "   value= ' "+youprice[i].split( "__ ")[2]+ " '>  </td>  <td>  <button   onclick=ypdel( "+i+ ")>    删除 </button>  </td>  </tr>  " 
 	   }	    
 	   temp+= " </table>  "	  	       
 	   $1( "msg ").innerHTML=(temp); 
 }   
 function   $1(s){return   document.getElementById(s);}//获取对像章 
 //-->  
  </SCRIPT>      
 添加了之后,怎么也删除不掉,是啥问题,谁帮我瞅两眼
------解决方案-------------------- <div id=msg>  </div>  <BUTTON ONCLICK=ypadd()> 添加一项 </button>  
  <SCRIPT LANGUAGE= "JavaScript ">  
  <!-- 
  Array.prototype.del=function(n) {  
 //n表示第几项,从0开始算起。 
 //prototype为对象原型,注意这里为对象增加自定义方法的方法。 
 if(n <0) //如果n <0,则不进行任何操作。 
 return this;  
 else  
 return this.slice(0,n).concat(this.slice(n+1,this.length));  
 /* concat方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。   
     这里就是返回this.slice(0,n)/this.slice(n+1,this.length)   
      组成的新数组,这中间,刚好少了第n项。 
 slice方法: 返回一个数组的一段,两个参数, 
 分别指定开始和结束的位置。 */  
 } 
 //var a=[1,2,3,4] 
 //alert(a.del(2)) 
 var youprice=[]; 
 function ypadd(){ 
    // mywin.close(); 
 youprice.push( '运费__22_33 ') 
 //$( "#oo_p_n ").val( " "); 
 //$( "#oo_p_f ").val( " "); 
 //$( "#oo_p_s ").val( ' '); 
 pppp(); 
 } 
 function ypdel(i){ 
 youprice=youprice.del(i)   
 pppp() 
 } 
 function pppp(){     
 var temp= " <table