我正在尝试获取给定数组中的最大元素,以下是要求:
>
var obj={key:[1,2,4]};
有人能给我解释一下为什么当我把
!obj.hasOwnProperty(key)
在IF函数的末尾,我得到了错误:如果属性不存在,应该返回未定义。但是当我把它放在IF函数的开头时,它毫无问题地通过了。
var obj = {
key: [1, 2, 4]
};
function getLargestElementAtProperty(obj, key) {
if (obj[key].length === 0 || !Array.isArray(obj[key]) || !obj.hasOwnProperty(key)) {
return undefined;
}
var largestElement = 0;
for (var i in obj[key]) {
if (largestElement < obj[key][i]) {
largestElement = obj[key][i];
}
}
return largestElement;
}
当<代码>!obj。hasOwnProperty(key)放在if语句的开头,如果对象没有指定的键(因此,!obj.hasOwnProperty(key)
产生true
),其他检查将不会因短路或短路而评估(简单地说,如果任何条件的计算结果为true,则不会计算任何其他检查,因为整个表达式将始终为true)。
但是,当置于if语句末尾时,obj[key]。首先计算长度===0
。如果obj[key]==未定义
,则在计算obj[key]时将发生错误。长度
,因为未定义
没有属性长度
。具体来说,错误是:TypeError:无法读取未定义的属性“length”
问题内容: 我正在尝试为多维数组中的特定键选择最大值。我无法“找到”有问题的钥匙… 因此,数组(比我在这里发布的要冗长得多) 我试图在整个数组中找到最大的“ dnum”值,因此在此示例中,$ max =2。我知道max函数允许我执行此操作,但是我不确定如何引用dnum。元素而不将整个对象放入foreach循环中,如果我这样做了,那么max不会成为要使用的函数,对吗? 因此,我无法完全做到这一点:
本文向大家介绍如何获取MongoDB中不同元素的最大值,包括了如何获取MongoDB中不同元素的最大值的使用技巧和注意事项,需要的朋友参考一下 要获取不同元素的最大值,请在MongoDBgregation()中使用$sort和$group。让我们创建一个包含文档的集合- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是查询以获取MongoDB中不同元素的最大值- 这将产
本文向大家介绍如何在MongoDB中获取具有最大ID的元素?,包括了如何在MongoDB中获取具有最大ID的元素?的使用技巧和注意事项,需要的朋友参考一下 要获得具有最大id的元素,可以使用方法。为了理解上述概念,让我们用文档创建一个集合。查询如下- 在method的帮助下显示集合中的所有文档。查询如下- 以下是输出- 这是获取具有最大id的元素的查询- 以下是具有最大id的记录的输出-
我试图从mongo集合中检索一个元素,即具有greatest _id字段的元素。我知道这可以通过查询: 但它似乎有点不优雅,我想知道是否有一种方法可以使用findOne()获取特定元素 注意:我想这样做是因为,根据我在ObjectId中读到的内容,第一个字节对应于从Epoch开始的毫秒,因此,插入的最后一个元素将具有最大的_id。有没有其他方法可以检索插入到集合中的最后一个元素?
问题内容: 我有一个二维NumPy数组。我知道如何获取轴上的最大值: 如何获得最大元素的索引?我想代替输出。 问题答案: