2-23问题
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>数组排序</title>
</head>
<body>
<script>
var input;
var arr=[];
var i=0;
while(input!=="-1"){
input=Number(prompt("请输入您想排序的数字"));
arr[i]=input;
i++
}
// arr.pop();
arr.sort(function(a,b) {return b-a});
document.write(arr);
</script>
</body>
</html>老师您好,我这个里面为什么input后面用了!==号之后程序就识别不了-1了,输入了-1之后还是还是会弹出输入框,改为!=又能正常终止循环了。都是-1,不等于和未被赋值有什么区别呢
0
收起
正在回答
1回答
你好,因为!==,全不等,在比较时除了对值进行比较以外,还比较两边的数据类型。这里因为输入的值经过Number()方法之后,是数字,而“-1”是字符串,类型不行等哦。 意味着其两者不等,而非运算自然是true,所以会继续循环。
若能解决你的疑问,望采纳。
祝学习愉快~
前端小白入门系列课程
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36712 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星