我想将一个数组的元素切片成一个新的左右两个数组。但我不知道如何开始。
var a = [1,2,3,4,5],
b = a.slice(3);
a.length = 3;
// a is now [1,2,3]
// b is now [4,5]
考虑以下数组:
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var leftArr = arr.slice(0, 4);
并且
var rightArr = arr.slice(4);
function splitArr(arr, i) {
return [ arr.slice(0, i), arr.slice(i) ];
}
var a=[1,2,3,4,5,6];
var b=a.splice(3,a.length);
now a= [1,2,3]
and b=[4,5,6]
var b = a.splice(3);
就可以了,第二个参数不需要。 - Šime Vidas来自 http://www.w3schools.com/jsref/jsref_slice_array.asp :
语法:
array.slice(start, end)
例子:
<script type="text/javascript">
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.write(fruits.slice(0,1) + "<br />");
document.write(fruits.slice(1) + "<br />");
document.write(fruits.slice(-2) + "<br />");
document.write(fruits);
</script>
输出:
Banana
Orange,Apple,Mango
Apple,Mango
Banana,Orange,Apple,Mango
<html>
<body>
<script type="text/javascript">
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.write(fruits.slice(0,1) + "<br />"); //Banana
document.write(fruits.slice(1) + "<br />"); //Orange,Apple,Mango
document.write(fruits.slice(-2) + "<br />"); //Apple,Mango
document.write(fruits); //Banana,Orange,Apple,Mango
</script>
</body>
</html>
http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_slice_array
:)
- Šime Vidas