日期:2014-05-16  浏览次数:20541 次

JavaScript中的数组相关方法
	<script type="text/javascript">
		
		var array = [1, 2, 3];
		
		//将数组元素反序
		alert(array.reverse());				//3,2,1
		alert(array);						//3,2,1
		
		//改变length属性不改变数组容量
		array.length = 5;
		alert(array.length);				//3
		
		//可以根据数组内容动态改变容量
		array[4] = 5;
		alert(array);						//1,2,3,,5
		alert(array.length);				//5
		alert(array[3]);					//undefined
		alert(array[4]);					//5
		
		var array = [4, 1, 3, 2 ];
		
		//将数组元素排序,默认按字母或数字升序
		alert(array.sort());				//1,2,3,4
		
		//使用自定义的排序方法
		//自定义比较函数,排序时会用它对元素进行两两比较
		function compare(arg1, arg2)
		{
			if(arg1 < arg2)
				return 1;					//返回1则arg1排在前
			else if(arg1 > arg2)	
				return -1;					//返回11则arg2排在前
			else 
				return 0;					//返回0表示相等
		}
		alert(array.sort(compare));			//4,3,2,1
		
		alert(array);
		
		var array = [1, 2, 3];
		
		//根据给定的分隔符拼接数组元素
		alert(array.join("$"));				//1$2$3
		
		//联接数组或元素但不改变原数组
		alert(array.concat(4));				//1,2,3,4
		alert(array.concat(4,[5,6]));		//1,2,3,4,5,6
		alert(array);						//1,2,3
		
		var array = [1, 2, 3, 4];
		//截取子数组,但不改变原数组
		alert(array.slice(1));				//2,3,4
		alert(array.slice(1, 2));			//2
		alert(array);						//1,2,3,4
		
		var array = [1, 2, 3, 4];
		
		//替换数组中的元素,返回没被替换的子数组
		//参数:splice(开始的索引,结束的索引,新的元素或数组)
		alert(array.splice(1, 2, [5, 6]));	//2,3
		alert(array);						//1,5,6,4
		
		var array = [1, 2, 3];

		//栈方法
		alert(array.pop());					//3,出栈,返回弹出元素
		alert(array);						//1,2
		alert(array.push(4,5));				//4,入栈,返回数组的新长度
		alert(array);						//1,2,4,5
		
		var array = [1, 2, 3];
		//队列方法
		alert(array.shift());				//1,出队,返回出队元素
		alert(array);						//2,3
		alert(array.unshift(4,[5]));		//4,入队,返回队列新长度(IE8返回undefined)
		alert(array);						//4,5,2,3
		
	</script>

?

1 楼 babydeed 2012-02-23  
引用
var array = [1, 2, 3, 4]; 
    //截取子数组,但不改变原数组 
    alert(array.slice(1));              //2,3 

这个结果应该是2,3,4
2 楼 haibin369 2012-02-23  
babydeed 写道
引用
var array = [1, 2, 3, 4]; 
    //截取子数组,但不改变原数组 
    alert(array.slice(1));              //2,3 

这个结果应该是2,3,4

灰常感谢,已更正!