js数组删除数组元素!

一、建立数组对象

      我们再介绍JAVAScript的数组对象的建立方法,建立数组对象的语法有两种:

1、在声明数组时仅仅声明数组内有几个组件。

var 数组对象名称 = new Array(组件个数);

fruit = new Array(3);    //声明名为fruit的数组,共有三个组件,这就相当于一次声明了三个变量

然后必须另行准备几行程序代码,代序将变量值填入。

fruit[0] = "西瓜";
fruit[1] = "苹果";
fruit[2] = "香蕉";

2、声明时直接给定所有数组组件,彼此之间用逗号隔开,用小括号括起来,组件个数就是数组长度。

var 数组对象名称 = new Array(组件一......,组件N);

var fruit = new Array("西瓜","苹果","香蕉");

注:在一般语言中数组内的组件必须是相同类型的值,但是在JAVAScript当中可以将不同类型的数据放入数组中。


二、数组对象的属性

JAVAScript为数组对象提供以下几种属性:

使用格式:
数组对象名称.属性


序 属性名称 使用说明
1 constructor 指定建立地象原型(prototype)函数
2 index 代表数组组件的索引值
3 input 代表规则表达式中的字符串。
4 length 取得数组长度(数组组件个数)。
5 prototype 用以建立自定义的对象属性


三、数组对象的方法

JAVAScript为数组对象提供以下多种方法:

使用格式:
数组对象名称.方法(参数)


序 方法名称 使用说明
1 concat(数组1,数组2,...,数组N) 将多个数组结合成一个新的数组
2 join(分隔字符) 将数组结合成一个字符串,用特定字符来分开
3 pop() 将数组内最后一个组件删除,并返回该组件内容
4 push(组件1,组件2,...,组件N) 将一个或多个组件补在数组最后面,并返回最后一个组件内容
5 reverse() 将数组内所有组件的索引次序反转(Transpose)
第一个组件变成最后一个,最后一个组件则拿到最前面
6 shift() 将数组内第一个组件删除,并返回该组件内容
7 slice(开始索引,结束索引) 将数组内容转入一个新的数杉
8 sort() 将数组内容排序
9 splice() 增加或删除数组组件
10 toSource() 返回代表特定数组的数组常数,可以用来建立新的数组
11 toString() 以字符串来表示该数组及其组件
12 unshift(组件1,组件2,...,组件N) 将一个或多个组件补在数组最前面,并返回最后数组长度
13 valueOf() 取得数组值


注:其中有些方法,例如:push、shift、unshift……在有些版本的IE浏览器还不支持,使用时应特别注意。
  
举例:

<Script language = "JAVAScript">
<!--
    var fruit = new Array("西瓜","香蕉","苹果");    //声明数组并给数组内三种水果赋值
    //第一次显示数组“fruit”的3个变量内容,<br>是换行符
    document.write(fruit[0] + "<br>" + fruit[1] + "<br>" + fruit[2] + "<br>" + fruit);
    document.write("<hr>");    //插入水平线做为分隔线
    //第二次显示数组,<hr>是插入水平线做为分隔线
    with (document)    {
    write(fruit.reverse() + "<hr>");    //将数组反转
    write(fruit.join("、") + "<hr>");    //将数组结合成一个字符串,用“、”分开
    write(fruit.sort() + "<hr>");    //将数组内容排序
    write(fruit.length + "<hr>");    //计算出数组的长度
    }
-->
</Script>







/**********************************************************/
js删除数组元素 :

   <script language="javascript" type="text/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 test=new Array(0,1,2,3,4,5);
test
=test.del(3);  //从0算起,这里也就是删除第4项。
alert(test);
</script>

/************************************************************/
。JS数组有别于其他语言的一个重要特点是,他可以在不同行包含不同的数据类型,这也算JS这种弱类型语言的一个特色吧!

}


posted @ 2012-04-10 18:32  tangself  阅读(11495)  评论(0编辑  收藏  举报