Javascript 数组对象 操作

http://blog.sina.com.cn/s/blog_4758a28b010098lm.html

注:JAVAScript数组与VBScript的数组不单在语法上不同,在使用时也有众多不同之处,请注意区分。
 
一、建立数组对象
 
      我们再介绍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浏览器还不支持,使用时应特别注意。
  
举例:


 
 
 
三、二维数组
 
      JAVAScript的数组对象其实只是一维的结构,但是我们可以利用对一维数组的进一步设计与利用,将数组放进数组当中,让数组内的组件也是数组,就构成JAVAScript的二维数组了。不过二维数组在使用上容易发生错误,所以我们这里只介绍一下它的概念,并不推荐使用。

 

四、JS删除元素

 

<html>
<head>
</head>
<body>
 
<script>
Array.prototype.del=function(k){
var len=this.length;
//alert(len);
for(var i=k;i<len;i++){
this[i]=this[i+1];
}
this.pop();
return this;
}

var array= [1,2,3,4,5,6,7];
var a = array.del(2);
alert(a.join(","));
var b = array.del(0);
alert(b.join(","));
</script>

</body>
</html>

 

 4.1 //JS删除元素讲解

 

//JS删除元素
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));
 
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值