js拾遗补缺之数组篇(一)

本文详细介绍了JavaScript中的数组特性及常用操作方法,包括数组的定义、动态调整长度的方式以及toString、join、concat、pop、push和reverse等实用方法的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Js好久没用了,感觉都有点疏远了,还好最近看了本好书《javascript 高级编程》这才慢慢的把js又温习了一下。

这里把一些js里常用的知识点列一下,以供以后的查询

这是第一篇,讲讲Array吧。

 

与java不同的是在js中存在真正的Array类。
可以这样var aValues = new Array(20);定义Array
也可以这样定义Array

var aValues = new Array();

 


aValues[0]="aaa";
aValues[1]="bbb";
aValues[2]="ccc";
还可以这样定义
var aValues =new Array("aaa","bbb","ccc");


js中的数组类似于java中的ArrayList,每增加一个数组项,数组的长度就动态的增加。
例如:
var aValue= new Array("aaa","bbb","ccc");
aValues[3]="dddd";
alert(aValues.length);
结果,不会象java里那样出现空指针,而是是4.


如果是在数组的位置30放置一个值结果会如何?
var aValue= new Array("aaa","bbb","ccc");
aValues[30]="dddd";
alert(aValues.length);
答对了,结果是31
那3,到29的位置的值都会是什么那?对,是null。

 


Array对象有很多很有用的方法,很多都是java里没有的。(什么时候java也能有这样的方法啊!)。

 

 

 

 

1.toString ,valueOf
这2个方法功能一样都是返回一个以,为分割符的字符串
var aValues= ["a","b","c"];
alert(aValues.toString());//返回的是a,b,c

 

2.join(separator)-----------------以separator指定的字符作为分割符,将数组转换为字符串,当seperator 为逗号时,其作用和toString()相同。
var aValues= ["a","b","c"];
alert(aValues.join("-"));//返回的是a-b-c
alert(aValues.join("]["));//返回的是a][b][-c

 

3.concact(item1,item2,....)-----------该方法不是要把参数列表连接到原来的数组中而是把参数列表添加到数组的后面形成一个新的数组并返回,
而原有数组不受影响。

如:var aValues=["a","b","c"];
var aNewValues=aValues.concact("d","e");
alert(aNewValues.toString);//输出的是a,b,c,d,e
alert(aValues.toString);//输出的亦然是a,b,c

 

4.objArray.pop()---------看名字就能猜到这是栈的操作。恭喜你猜对了,该方法就是弹出数组的最后一个元素。
pop方法返回数组最后一个元素的值,并将length属性减1,即返回后立即丢失最后一个元素。
他结合下面的push方法,使得将数组作为栈来使用成为可能。

var aValues= ["a","b","c"];
alert(aValues.pop());//输出的是c
alert(aValues.length);//输出的是2

 

5. push([value1[,value2[,....]]])-------------还是栈的操作,将参数添加到数组的结尾。如:[1,2,3, 4].push("a","b")将得到[1,2,3,4,"a","b"]
这个和concact的区别就是concact不影响原来的数组而push就是在原来的数组中进行的操作。
var aValues= ["a","b","c"];
aValues.push("d","e");
alert(aValues.toString());//输出的是a,b,c,d,e
alert(aValues.length);//输出的是5

 

6.reverse()很有意思的方法,将数组中的元素反转排列。
var aValues= ["a","b","c"];
aValues.reverse();
alert(aValues.toString());//输出的是c,b,a

 

持续未完...

To Be Continue!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值