javascript - 查找字符串中的最高和最低数字?
问题描述
你得到一串空格分隔的数字,并且必须返回最高和最低的数字。我试图在不使用Math.max()
or的情况下解决这个问题Math.min()
。
到目前为止,这是我的代码:
function highAndLow(nums){
let arr = nums.split(' ');
let maxNum = arr[0];
let minNum = arr[0];
for(let i=0; i < arr.length; i++) {
if(arr[i] > maxNum) {
maxNum = arr[i];
console.log('Setting maxNum to ' + maxNum);
}
}
for(let i=0; i < arr.length; i++) {
if(arr[i] < minNum) {
minNum = arr[i];
console.log('Setting minNum to ' + minNum);
}
}
const result = maxNum + " " + minNum;
return result;
}
预期:542, -214
,而不是:6, -214
为什么我得到 6 而不是 542?
解决方案
解决方案比预期的要容易:
function highAndLow(nums){
var array = nums.split(' ');
var num = array.map(item => parseFloat(item));
var sortedArray = num.sort((a, b) => b -a );
console.log(sortedArray);
return sortedArray[0] + ', ' + sortedArray.reverse()[0]
}
var result = highAndLow('2 3 9 3 50 32');
console.log(result);
在此示例中,您既不使用 Math.max 也不使用 Math.min
推荐阅读
- c# - 变量变化荒谬,如 3 到 51?
- google-sheets - 如何根据值生成“系列”数字:
- kubernetes - Kubernetes - Ingress - 被更一般的规则所捕获
- git - Git - 使受保护的功能分支与主分支保持同步
- apache-kafka - Apache-Ignite:Kafka-connect 数据复制主机问题
- azure-data-factory-2 - 如何将源中的值存储到参数中并在数据流转换中使用?
- javascript - 在 React 类组件中声明的导出函数
- c++ - 构建 Mozilla nspr 的胖二进制文件
- excel - 如何使用VBA隐藏和显示excel功能区上的按钮
- java - Spring and MongoDB - 如何根据过滤器查询文档?