【发布时间】:2021-06-22 18:12:30
【问题描述】:
我有一个带有对象的对象,我想显示出现次数最多的名称排名。
喜欢
- 约翰
- 玛丽亚
- 乔什
这是我的对象:
let data = {
"1111": {
firstName: "john",
lastName: "doe",
},
"1112": {
firstName: "john",
lastName: "doe",
},
"1113": {
firstName: "maria",
lastName: "dee",
},
"1114": {
firstName: "john",
lastName: "doe",
},
"1115": {
firstName: "maria",
lastName: "dee",
},
"1116": {
firstName: "josh",
lastName: "kek",
},
"1117": {
firstName: "maria",
lastName: "dee",
},
"1118": {
firstName: "nick",
lastName: "smith"
}
}
我用 for in 循环尝试了一些事情,但我没有做对...
for (let key in data) {
let firstFind = data[key]["firstName"]
let firstCounter = 0
if(data[key]["firstName"] = firstFind) {
firstCounter++
} else {
let secondFind = data[key]["firstname"]
let secondCounter = 0
if(data[key]["firstName"] = secondFind) {
secondCounter++
}
//...reproduce until there is no new name
//this is where my limit is
}
}
代码应该循环遍历所有对象,计算名称,并创建出现次数最多的名称的排名。见上例
【问题讨论】:
-
请添加你的代码,你试过了。两个或多个相同的计数会发生什么?
-
Object.values()+ "javascript group array of objects" 答案之一 +.sort() -
谢谢,我试试!
标签: javascript string loops object count