JavaScript数组的全部方法
1 concat()
方法用于连接两个或多个数组。
该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
例1:创建了两个数组,然后使用 concat() 把它们连接起来
<script type="text/javascript"> var arr = new Array arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" var arr2 = new Array(1) arr2[0] = "James" arr2[1] = "Adrew" arr2[2] = "Martin" document.write(arr.concat(arr2)) </script>
输出结果:
George,John,Thomas,James,Adrew,Martin
2 join()
方法用于把数组中的所有元素放入一个字符串。
元素是通过指定的分隔符进行分隔的。
例1:
将创建一个数组,然后把它的所有元素放入一个字符串
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr.join()) </script>
输出结果:
George,John,Thomas
例2:
使用分隔符来分隔数组中的元素:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr.join(".")) </script>
输出结果:
George.John.Thomas
3 pop()
方法用于删除并返回数组的最后一个元素。
例:
创建一个数组,然后删除数组的最后一个元素。请注意,这也会改变数组的长度
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr) document.write("<br />") document.write(arr.pop()) document.write("<br />") document.write(arr) </script>
输出结果:
George,John,Thomas
Thomas
George,John
4 push()
方法可向数组的末尾添加一个或多个元素,并返回新的长度。
例:
创建一个数组,并通过添加一个元素来改变其长度:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr + "<br />") document.write(arr.push("James") + "<br />") document.write(arr) </script>
输出结果:
George,John,Thomas
4
George,John,Thomas,James
5 reverse()
方法用于颠倒数组中元素的顺序。
例:
创建一个数组,然后颠倒其元素的顺序:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr + "<br />") document.write(arr.reverse()) </script>
输出结果:
George,John,Thomas
Thomas,John,George
6 shift()
方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
例:
创建一个数组,并删除数组的第一个元素。请注意,这也将改变数组的长度:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr + "<br />") document.write(arr.shift() + "<br />") document.write(arr) </script>
输出结果:
George,John,Thomas
George
John,Thomas
7 slice()
方法可从已有的数组中返回选定的元素。
例1:
创建一个新数组,然后显示从其中选取的元素:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr + "<br />") document.write(arr.slice(1) + "<br />") document.write(arr) </script>
输出结果:
George,John,Thomas
John,Thomas
George,John,Thomas
例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 />") document.write(arr.slice(2,4) + "<br />") document.write(arr) </script>
输出结果:
George,John,Thomas,James,Adrew,Martin
Thomas,James
George,John,Thomas,James,Adrew,Martin
8 sort()
方法用于对数组的元素进行排序。
例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 />") document.write(arr.sort()) </script>
输出结果:
George,John,Thomas,James,Adrew,Martin
Adrew,George,James,John,Martin,Thomas
例2:
创建一个数组,并按字母顺序进行排序:
<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()) </script>
输出结果:
10,5,40,25,1000,1
1,10,1000,25,40,5
上面的代码没有按照数值的大小对数字进行排序,要实现这一点,就必须使用一个排序函数:
<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
9 splice()
方法向/从数组中添加/删除项目,然后返回被删除的项目。
例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,MartinGeorge,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,MartinGeorge,John,William,Martin
10 toSource()
方法表示对象的源代码。
该原始值由 Array 对象派生的所有对象继承。
toSource() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。
例:
展示 toSource() 方法的用法:
<script type="text/javascript"> function employee(name,job,born) { this.name=name; this.job=job; this.born=born; } var bill=new employee("Bill Gates","Engineer",1985); document.write(bill.toSource()); </script>
输出结果:
({name:"Bill Gates", job:"Engineer", born:1985})
11 toString()
方法可把数组转换为字符串,并返回结果。
例:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr.toString()) </script>
输出结果:
George,John,Thomas
12
把数组转换为本地字符串。
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr.toLocaleString()) </script>
输出结果:
George, John, Thomas
13 unshift()
方法可向数组的开头添加一个或更多元素,并返回新的长度。
例:
创建一个数组,并把一个元素添加到数组的开头,并返回数组的新长度:
<script type="text/javascript"> var arr = new Array() arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr + "<br />") document.write(arr.unshift("William") + "<br />") document.write(arr) </script>
输出结果:
George,John,Thomas
4
William,George,John,Thomas
返回数组对象的原始值