关于pop删除最后一个问题

来源:2-22 编程练习

weixin_慕移动6442865

2019-08-05 16:03:36

var a=[];

var b;

for(var i=0;i<=a.length;i++){

if(b!=-1){

b=prompt("输入要排序的数字");

var str=a.push(b);

}

a.sort(function(x,y){

return x-y

})

}

a.shift();

document.write(a)

如果用for循环写的话,用pop无效,因为下面有个小到大排序。所以最后在外面放了一个shift删除头部,那如果要用pop是不是只能把a-b改成b-a才可以。而且是不是只能写在最外层?

写回答

1回答

好帮手慕糖

2019-08-05

同学你好,1、同学说的这两个方式都不建议使用哦,因为可能会输入其他比-1小的数,所以排序之后,-1不一定是最后一个或者是第一个。

2、因为-1是最后输入的(输入之后就结束了)。所以可以在循环结束之后,就先pop()去除最后一个元素,然后在执行sort排序哦。

希望能帮助到你,欢迎采纳。

祝学习愉快!

0
heixin_慕移动6442865
h 试了一下,果然可以了,不然原来那种如果打其他比-1小的会出现问题,谢谢老师
h019-08-05
共1条回复

0 学习 · 40143 问题

查看课程