Javascript数组函数
1.array.concat(value,......)
方法concat()将创建并返回一个新数组,这个数组是将所有的参数都添加到array中生成的.它并不改变原array的数组。
ex:
a = [1,2,3];
alert(a.concat(4,5));
alert(a);
2.array.join()
将数组连接起来构成一个字符串。
ex:
a = new Array(1,2,3,”testing”);
alert(a.join("#")); //1#2#3#testing
3.array.length()
获取数组元素的大小。
ex:
a = new Array(); //a.length=0
b = new Array(10); //b.length=10
c = new Array("one","two","there"); //c.length=3;
c[3] = "four"; //c.length=4;
c[10] = "blastoff"; //c.length =11;
4.array.pop()
删除并且返回数组的最后一个元素
ex:
var stack =[]; //栈:[]
stack.push(1.2); //栈:[1,2] 2
stack.pop(); //栈:[1] 2
stack.push([4.5]); //栈:[1,[4,5]] [4,5]
stack.pop(); //栈:[1] [4,5]
stack.pop; //栈:[]1
5.array.push(value)
要添加到尾部的值.
6.array.reverse()
颠倒数组中元素的位置
7.array.shiff()
将元素移出数组
方法shiff()将把array的第一个元素移动出数组,返回哪个元素的值,并且将余下的值的所有元素前移动一位,以补充组头空缺的位置.
8.array.slice()
返回数组的一部分
array.slice(stand,end)
参数 | 描述 |
start | 必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。 |
end | 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。 |
返回值
返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
ex:
var a = [1,2,3,4,5];
a.slice(0,3); //返回 [1,2,3];
请注意,该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。
9.array.sort()
array.sort(orderfunc)
方法sort()将在原数组上对数组元素进行排序,如果调用方法sort()时没有参数,将按照字母排序(更为精确的说按照字母的编码进行排序).如果要实现这一点需要把字符元素转化为字符串(如果有必要的话).
如果想按照别的顺序进行排序,就必须提供比较函数,该函数要比较2个值,然后返回一个用于说明这个值的数字.
<script type="text/javascript">
function sortNumber(a,b)
{
return a - b
}
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(sortNumber))
</script>
输出:
10,5,40,25,1000,1
1,5,10,25,40,1000
10. array.splice()
splice() 方法用于插入、删除或替换数组的元素。
arrayObject.splice(index,howmany,element1,.....,elementX)
参数 | 描述 |
index | 必需。规定从何处添加/删除元素。 该参数是开始插入和(或)删除的数组元素的下标,必须是数字。 |
howmany | 必需。规定应该删除多少元素。必须是数字,但可以是 "0"。 如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。 |
element1 | 可选。规定要添加到数组的新元素。从 index 所指的下标处开始插入。 |
elementX | 可选。可向数组添加若干元素。 |
返回值
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
例子 1
在本例中,我们将创建一个新数组,并向其添加一个元素:
<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,0,"William")
document.write(arr + "<br />")
</script>
输出:
George,John,Thomas,James,Adrew,Martin
George,John,William,Thomas,James,Adrew,Martin
例子 2
在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:
<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,1,"William")
document.write(arr)
</script>
输出:
George,John,Thomas,James,Adrew,Martin
George,John,William,James,Adrew,Martin
例子 3
在本例中我们将删除从 index 2 ("Thomas") 开始的三个元素,并添加一个新元素 ("William") 来替代被删除的元素:
<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,3,"William")
document.write(arr)
</script>
输出:
George,John,Thomas,James,Adrew,Martin
George,John,William,Martin
11.array.toLocaleString()
将数组转化成一个局部字符串
a = new Array(1,2,3,”testing”);
alert(a.toLocaleString()); //1.00,2.00,3.00,testing
12.array.toString()
将数组转话成一个字符串
a = new Array(1,2,3,”testing”);
alert(a.toString()); //1,2,3,testing
13.array.unshift
在数组头部插入一个值或者多个值