在JS中使用Array实习栈和队列,并封装。

在JS中使用Array实习栈和队列,并封装。

1.先看一个简单的封装例子

function a(){
this.show=function()
{alert("a show");
};
this.init=function(){
alert("a init");
};
}

或者这样写

a.prototype.show=function() 
{ 
alert("a show"); 
} 
a.prototype.init=function() 
{ 
alert("a init"); 
} 

这样就实现了一个简单的类的封装,调用一下

function test(src){
var s=new a();
s.init();
s.show();
}

2接下来看数组的几个用到的方法。

pop()删除并返回数组的最后一个元素
push()向数组的末尾添加一个或更多元素,并返回新的长度。
shift()删除并返回数组的第一个元素
unshift()向数组的开头添加一个或更多元素,并返回新的长度。

3使用数组实现栈

function Stack(){
var a=new Array();
/*  实现入栈
*/
Stack.prototype.Push=function(){
if(argument.length==0)
return -1;
for(var i=0;i<argument.length;i++)
  {
  a.push(arguments[i]);  
  }
  return a.length;
}
/*  实现出栈
*/
Stack.prototype.Pop=function(){
if(a.length==0)
return null;
else
return a.pop();
}
}

4使用数组实习队列

function Queue(){
var a=new Array();
/*  实现入队列
*/
Stack.prototype.Push=function(){
if(argument.length==0)
return -1;
for(var i=0;i<argument.length;i++)
  {
  a.push(arguments[i]);  
  }
  return a.length;
}
/*  实现出队列
*/
Stack.prototype.shift=function(){
if(a.length==0)
return null;
else
return a.shift();
}
}

还有很多方法,比如取得数组长度,将数组转化成字符串,判断数组为空等,均可使用数组方法实现。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,593评论 25 708
  • 栈 栈的英文单词是Stack,它代表一种特殊的线性表,这种线性表只能在固定一端(通常认为是线性表的尾端)进行插入,...
    Jack921阅读 1,531评论 0 5
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,376评论 11 349
  • github开启二次验证后,提交时密码用个人设置里的Personal Access Token,不是账号密码
    巫小师阅读 1,459评论 0 0
  • 风吹过旷野,一串风铃的歌声 忽然,细绳断了 风铃们洒落,你的泪水 像碎了一地的风铃 原谅我,那年的顽劣 温暖,牵手...
    王子魚阅读 479评论 16 21