javascript - 在尝试获取最小和最大年龄时获取 age=infinity

标签 javascript

我正在实现一个项目,在该项目中,我必须找到笼子中老鼠的最小值 和 k 年龄。

我使用的代码是:

   var earTags = "";
            var miceAge = "";
            var genoTypes = "";
            for (var curr_mice_cnt = 0, mice_len = data.mice_info.length; curr_mice_cnt < mice_len; curr_mice_cnt++ )
            {
                alert("Inside for loop");
                var m_info = data.mice_info[curr_mice_cnt];
                console.log("Mice Len="+data.mice_info.length);
                earTags = earTags + m_info.ear_tag + ", " ;
                miceAge = miceAge + m_info.age + ", ";
                genoTypes = genoTypes + getGenotypeName(m_info.genotype_id) + ", ";

                var lowest = Number.POSITIVE_INFINITY;
                var highest = Number.NEGATIVE_INFINITY;
                var tmp;
                for (var i=miceAge.length-1; i>=0; i--) {
                    tmp = miceAge[i].Cost;
                    if (tmp < lowest) lowest = tmp;
                    if (tmp > highest) highest = tmp;
                }
                console.log(highest, lowest);

            }

现在我试图显示作为字符串的 miceage,我想找到字符串的最小值和最大值,我得到的错误是 Miceage=Infinity.

谁能帮我实现这个,或者你能建议任何其他代码来实现这个。

最佳答案

您发布的代码存在一些问题。

  • 首先,您根本不需要内部 for 循环,因为您要跟踪 data.mice_info 数组的最小值/最大值。
  • 其次,您在内部循环中迭代 miceAge,它是一个字符串,因此 miceAge[i].Cost 会出现未定义的情况,这将使大于/小于比较都失败。

我建议如下:

var lowest = Number.POSITIVE_INFINITY;
var highest = Number.NEGATIVE_INFINITY;
for (var curr_mice_cnt = 0, mice_len = data.mice_info.length; curr_mice_cnt < mice_len; curr_mice_cnt++ ) {
    var tmp = data.mice_info[curr_mice_cnt];
    if (tmp.age < lowest) lowest = tmp.age;
    if (tmp.age > highest) highest = tmp.age;
}
console.log(lowest, highest);

关于javascript - 在尝试获取最小和最大年龄时获取 age=infinity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15516702/

相关文章:

javascript - 如何将 HTML 字符串转换为纯文本并将其附加到 JavaScript 中的 DIV 中?

javascript - 如何以同时兼容 Node.js 和浏览器 JavaScript 的方式跨文件导入 JavaScript 函数

javascript - 输入 ID 时,将图像添加到来自 json 文件的警报中

php - 每秒加载图像

javascript - 动画冒泡排序算法

javascript - 跨多个点跨越 Highcharts 中的类别

javascript - jQuery 条件检查类,如果它包含它执行的类

Javascript 将响应对象解析为对象数组

javascript - 不同网站上的不同用户代理

javascript - 用于跨浏览器 SELECT Dropdown 的 AngularJs 指令