在学习javascript的过程中,发现数组这个东西特别特别常用,虽然教学视频和各种js书上已经讲得很详细了,但到真正用到的时候有些方法忘了的话还真懒得翻书去找,< 咯咯,大家是不是和我一样呢?> 这就是我写这篇文章的原因啦,废话不多说,上货~
首先当然是创建数组啦~ 怎么创建这应该是最最基础的了,我就不啰啰了。
<span style="font-size:14px;"> var arr=[1,3,5,4,2];或 var arr=new Array();
</span>
下面开始讲数组的方法:
-
length();——返回数组的长度。这个方法用的最频繁的是在数组的遍历中(用for循环来进行遍历)。
<span style="font-size:14px;">arr.length();</span>
-
数组中元素的添加与删除 (push和pop可以理解成为栈,shift和unshift可以理解成为队列)
- push();——从后面给数组添加元素
<span style="font-size:14px;">arr.push(6,7,8)</span>
- pop();——从后面删除数组元素(删除的是最后一项)
<span style="font-size:14px;">arr.pop();</span>
- unshift();——从前面添加元素
<span style="font-size:14px;">arr.unshift(-2,-1,0);</span>
- shift();——从前面删除元素(删除的是第一项)
<span style="font-size:14px;">arr.shift();</span>
- push();——从后面给数组添加元素
-
sort();和reverse();——重新排序的方法
- sort();——正序排序
<span style="font-size:14px;">arr.sort(); alert(arr); //1,2,3,4,5</span>
但是,别高兴的太早,正序排序没那么简单,大家都知道计算机其实很傻,你给它 1,2,11,33 这几个数字再调用sort();的时候,它不会从小到大给你排起来,而是返回这样的顺序:1,11,2,33,原因是sort()方法在使用是会调用每个数组项的toString();转型方法,这说明如果我们的数组的成员都是字符串,那么就不用担心这个问题了,可是,如果我们想要给数字进行排序怎么办呢?这就要用到一个函数——比较函数:
<span style="font-size:14px;"> function bijiao() { var arr=[1,2,11,33]; alert(arr.sort(function (n1,n2) { return n1-n2; })); } bijiao(); //1,2,11,33</span>
这个函数中的n1,n2是系统自动传参的,并不需要我们手动传参,这个比较函数返回的是负数、0或者正数,当返回的是负数时说明n1<n2,则n1自动排到n2前面,正数反之。
- reverse();——倒序排列(此处的倒序并非我们说的给数字从大到小排起来,而是按照在数组里的顺序进行倒序排列)
<span style="font-size:14px;">var arr=[1,2,11,33,0]; alert(arr.reverse()) //0,33,11,2,1 </span>
- sort();——正序排序
-
concat();he slice();——操作方法
- concat();——进行连接的方法
<span style="font-size:14px;">var arr1=[1,2,3,4,5]; var arr2=[6,7,8]; alert(arr1.concat(arr2)); </span>
- 未完待续
- concat();——进行连接的方法