有什么方法可以减少此代码以执行相同的操作,但少 100 个字符?
这是一个简单的双边队列,具有pushHead,popHead,pushTail,popTail,以及访问长度和isEmpty的方法。
var makeDeque = function()
{
var a= [];
this.length= a.length=0;
this.pushHead=function(v)
{
a.unshift(v);
}
this.popHead=function()
{
return a.shift();
}
this.pushTail=function(v)
{
a.push(v);
}
this.popTail=function()
{
return a.pop();
}
this.isEmpty=function()
{
return a.length===0;
}
return this;
};
Thanks!
您可以摆脱手动数组处理。我想你不能比这更短了(你可以缩短变量名称,但代码可能需要至少这么长)。
function Deque() {}
Deque.prototype = new Array();
var prot = Deque.prototype;
prot.pushHead = Deque.prototype.unshift;
prot.popHead = Deque.prototype.shift;
prot.pushTail = Deque.prototype.push
prot.popTail = Deque.prototype.pop
prot.isEmpty = function() {return this.length == 0}
这样,您还可以获得默认的所有功能Arrays
以及。Deque
在此示例中,实际上是Array
class.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)