【发布时间】:2013-05-06 17:18:10
【问题描述】:
我有一个包含对象的数组:
var articles = [];
var article = {};
Simple loop that iterates x times {
article.text = "foobar";
article.color = "red";
article.number = 5;
articles.push(article);
}
我不知道我的数组中有多少对象,但它们的属性都有不同的值,我只是在这里举了一些例子。
问题
我需要找到一种方法来遍历所有这些对象并检索 article.number 中具有最高值的对象的索引。我怎样才能做到这一点?我可能只使用 javascript、jQuery 等。没有其他语言。
我猜这将涉及同时使用 $.grep 和 Math.max 但我被困住了,我以前从未使用过 $.grep。
简而言之:
var highestNumber = index of object where article.number is highest
【问题讨论】:
-
你不会写循环吗?访问属性?比较值并存储更高的值?你尝试过什么,你在哪里卡住了?
-
jQuery 不是一种语言!
-
例如,如果您使用Underscore,则可以在一个语句中。 jQuery 库没有数据工具。
-
您是特别想要索引,还是只想要包含该最大值的对象?后者更容易。
-
你必须对值进行迭代才能找到最高的值,即使你使用一行 jQuery 进行迭代,迭代仍然在内部进行,所以它是一样的!
标签: javascript jquery arrays object