(JavaScript(1) )----------------数组(JavaScript数组作为栈和队使用,以及Array对象定义方法)

 Java中除了提供数组之外,还提供了Lise集合、Deque集合,其中LIst集合代表线性表;而Deque集合则代表则代表双向队列、既可充当栈,也可充当队列使用。JavaScript的数组则相当于Java中数组、List集合、Deque集合三者的角色。

JavaScript数组作为栈使用的两个方法如下:

push(ele):元素入栈,返回如战后数组的长度。

pop():元素出栈,返回出栈的数组元素。

JavaScrip数组作为队列使用的两个方法如下:

unshift(ele):元素入队列,返回入队列后数组的长度。

shift():元素出队列,返回出队列的数组元素。

这时候发现一个问题,大家都知道栈是先入后出的,队是先入先出的。那数组是如何实现这些的呢

数组作为栈的时候

代码:

<script type="text/javascript">	 
		var s = [];            //定义数组
		s.push("0")            //0进栈
		console.log(s);        //输出数组
		s.push("2"); 
		console.log(s);
		s.push("3"); 
		console.log(s);
		console.log(s.pop());  //出栈
		console.log(s);
		console.log(s.pop());  //出栈
		console.log(s);
	</script> 

控制台:

push(ele)在数进入数组时是从数组尾部进栈

pop()元素在数组末端出栈

所有达到了先进后出的效果

数组作为队列的时候

代码:

<script type="text/javascript">	 
		var q = [];             //定义数组
		q.unshift("0")          //0插入数组
		console.log(q);         //输出数组
		q.unshift("2");       
		console.log(q);
		q.unshift("3");  
		console.log(q);         
		console.log(q.shift()); //出队
		console.log(q);
		console.log(q.shift());
		console.log(q);
	</script>

unshift((ele):在元素进队的时候是从前面进入的(把数组中所有元素向后挤一个位置)

shift(():在元素出队的时候是从前面出的

要想真正达到广义上的先入先出,push 和 shift  混合操作即可

猜你喜欢

转载自blog.csdn.net/wbs925zxh/article/details/87606980