知识汇总12~操作数组的方法

1、数组创建:

var arr = new Array();

var arr = new Array([size]);//创建并指定长度,但是长度是可以随之发生改变的

2、数组的头部添加删除:

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

 

3、数组的尾部添加删除:

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

 pop() 方法用于删除并返回数组的最后一个元素。

4、数组的拷贝:

arr.slice() 方法可从已有的数组中返回选定的元素; 

arr.slice(start,end);该方法不会修改数组而是返回一个新的数组,包含从 start 到 end (不包括该元素)的 arr中的元素。

您可使用负值从数组的尾部选取元素。如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。

arr.concat() 方法用于连接两个或多个数组。  该方法不会修改数组而是返回一个新的数组,如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,

而不是数组。

 

/*例子 1*/
/*在本例中,我们将把 concat() 中的参数连接到数组 a 中:*/
<script type="text/javascript">

var a = [1,2,3];
document.write(a.concat(4,5));

</script>
  /*输出:*/
/*1,2,3,4,5*/
/*例子 2*/
/*在本例中,我们创建了两个数组,然后使用 concat() 把它们连接起来:*/
<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin"

document.write(arr.concat(arr2))

</script>
  /*输出:*/
  /*George,John,Thomas,James,Adrew,Martin*/

 

 

5、数组的splice()

在javascript中splice()方法,是一个很强的数组方法,它有多种用法。

splice()主要用途是向数组的中部插入项。

有如下3种方式:

1、删除——可以删除任意数量的项,只需要指定2个参数:要删除的第一项的位置和要删除项的项数。

例如,splice(0,2)会删除数组中的前两项。

2、插入——可以向指定位置插入任意数量的项,只需要提供3个参数:骑士位置、0(要删除的项数)和要插入的项。

如果要插入多个项,可以再传入第四、第五,一直任意多个项。

例如,splice(2,1,”red”,”green”)会删除当前数组位置2的项,然后再从位置2开始插入字符串“red”和”green”。

3、替换——可以指向指定位置插入任意数量的项,且同时删除任意数量的项,只需要指定3个指定参数:起始位置、要删除的项数和要插入的任意数量项。

插入的项是不必与删除的项数相等。例如,splice(2,2,”red”,”green”)会删除当前数组位置2的项,然后再从位置2开始插入字符串“red”和“green”。

splice()方法始终都会返回一个数组,该数组中包含从元素数组中删除的项(如果没有删除任何项,则返回一个空数组)。

 

代码示例:
<script>
 var colors = ["red", "green", "blue"];
var removed = colors.splice(0,1);  //删除第一项
alert(colors);  //green,blue
alert(removed);  //red,返回数组中值包含一项
                   removed = colors.splice(1, 0, "yellow", "orange");  //从位置1开始插入两项
alert(colors);  //green,yellow,organge,blue
alert(removed);  //返回的是一个空数组
                   removed = colors.splice(1, 1, "red", "purple");  //插入两项,删除一项
alert(colors);  //green,red,purple,orange,blue
alert(remove);  //yellow, 返回的数组中只包含一项
</script>

 

 

6、数组排序:

arr.reverse()//反转元素(最前的排到最后、最后的排到最前),返回数组地址

arr.sort() //方法用于对数组的元素进行排序。

例子:

 

<script type="text/javascript">
var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"
document.write(arr + "<br />")
document.write(arr.sort())

/*输出:10,5,40,25,1000,1
1,10,1000,25,40,5*/

</script> 

 

7、数组元素字符串化:

join() 方法用于把数组中的所有元素放入一个字符串。

例子:

 

<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr.join("."));/*并以 . 来进行分隔*/
/*输出:George.John.Thomas*/
</script>

 

posted @ 2018-07-31 10:51  刘欢乐  阅读(168)  评论(0编辑  收藏  举报