js 常用方法

 

  

1.删除数组中某个下标元素

//prototype为对象原型,注意这里为对象增加自定义方法的方法。
Array.prototype.del=function(n) { //n表示第几项,从0开始算起。
 if(n<0)
  return this;
 else
  return this.slice(0,n).concat(this.slice(n+1,this.length));
}

//测试 1:
注意删除的不是原数组,而是原数组的拷贝
var test=new Array(0,1,2,3,4,5); 
test=test.del(3); //从0算起,这里也就是删除第4项。
alert(test);//0,1,2,4,5

********************************************************************************
//测试 2:
   var test=new Array(0,11,2,3,14,15,18,9,5,29);
   var newarr=[];
   for(var i=test.length; i>=0;i--){
       if(test[i]<10){
           newarr.push(test[i]);
       }
   }
    alert(test);//0,11,2,3,14,15,18,9,5,29
    alert(newarr);//5 9 3 2 0

  

2.删除和排序星号

<script>
    var star=["**********","*","##","***","$$","****","##*"];
        star[7]="**";
        star[11]="****"
        star[12]="*******"
    var newStar=[];

    for(var i=0;i<star.length;i++){//for循环居然不能遍历undefined的元素,相当变态
        if(star[i]==undefined){
            star[i]="0";//给undifined的值随便赋值
        }
        if(star[i].indexOf("*") ==0){
            newStar.push(star[i]);
        }
    }
    alert(newStar)//此处已经拿到所有的开头是“*”打头的元素

    newStar.sort(function(a,b){//排序,按照长度来
        if(a.length> b.length) return 1;
        else return -1;
    });
    alert(newStar);//排序后

for(var j=0;j<newStar.length;j++){
    document.write(newStar[j]+"<br>")
}

</script>

 

posted @ 2016-05-18 13:45  黑土白云  阅读(206)  评论(0编辑  收藏  举报