javascript - 如何在一个提示中获取 3 个值,使用特殊字符分隔值而不写 3 个提示? javascript

标签 javascript

我最近开始学习 Javascript,有一些小任务,用户输入 3 个数字,程序选择最小的一个。我只用3个提示就可以做到。有没有办法让用户在一次提示中输入所有 3 个数字?

while (true) {
  var a, b, c;
  a = +prompt("enter a number");
  if (!a) {
    break;
  }
  b = +prompt("enter a number");
  if (!b) {
    break;
  }
  c = +prompt("enter a number");
  if (!c) {
    break;
  }
  var mimNumber = Math.min(a, b, c);
  alert("The smallest number is " + mimNumber);
}

最佳答案

您可以让用户输入数字,然后将其拆分,并将每个元素与变量进行比较以找到最小的数字(从新创建的数组中的第一项开始。然后迭代该数组并将每个元素与最小的数字,如果更小 - 替换最小的数字。

请注意,我不建议这样做 - 它只是回答您的问题,以便能够在一个提示中获取数字,然后从中获取最小的数字。另外 - 如果用户输入带有除“,”之外的任何其他分隔符的数字,这将会中断,所以这不是一个好的解决方案 - 它只是回答了问题。

var nums = prompt("enter 3 numbers separated by a comma");
var numArr = nums.split(',');
var minNum = parseInt(numArr[0]);

numArr.forEach(function (num) {
 let numb = parseInt(num);
 if(numb< minNum) { minNum = numb}
})
 
 alert("The smallest number is " + minNum);

关于javascript - 如何在一个提示中获取 3 个值,使用特殊字符分隔值而不写 3 个提示? javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47853491/

相关文章:

javascript - angularjs FileReader 返回未定义

javascript - 如何使用 jasmine 测试带有 DOM 元素的 JavaScript?

javascript - ASP.NET MVC - Javascript 数组总是作为 null 传递给 Controller

javascript - AngularJS - 使用书签

javascript - 来自 API 的 2 个并发请求数据混淆

javascript - 如果在 angularJS 的配置中配置,则测试 stateProvider 状态在 $state 上返回 null

javascript - 如何在 Javascript 中重播 Audio-Blob?

javascript - 如何在页面加载前使用 CSS 在响应式 slider 上设置高度

javascript - 如果有多个带有 Promise 的请求,如何将响应与请求匹配?

javascript - 当按钮类被其他类包装时,JavaScript代码不起作用