Кто-то, пожалуйста, помогите мне с моим титулом на этот вопрос.Как отсортировать массив JavaScript более вложенными объектами в массивах и захватить верхнюю ###?
Dummy пример. У меня есть массив объектов:
var cars = [
{
name: "Hyundai",
plans: [
{
name: "Something",
add-ons: [
{
cost: 100
},
{
cost: 75
}
]
}, { ... }
]
},
{
name: "Jeep",
plans: [
{
name: "Something",
add-ons: [
{
cost: 50
},
{
cost: 75
}
]
}, { ... }
]
},
{
name: "Buick",
plans: [
{
name: "Something",
add-ons: [
{
cost: 35
},
{
cost: 50
}
]
}, {...}
]
}
]
То, что я пытаюсь сделать, это найти верхние 2 машин, которые имеют самую дешевую надстройку и ссылаться на них через другие переменный.
Как это:
var top2 = findTopTwo(cars);
findTopTwo(arr) {
return arr.sort(function(a, b) {
// My trouble spot
}).slice(0, 2);
}
С моим простым примером, результат для top2 будет:
- Buick (дешевое дополнение были $ 35, значение, используемое для сравнения)
- Jeep (самый дешевый надбавка составляла 50 долларов США, использовалось для сравнения)
ваши дополнения будет иметь имена, или они просто стоят? Потому что, если вы просто храните пару 1 квар, у меня нет смысла хранить объект в массиве – Fallenreaper
Я просто лишил его 99%, чтобы ответить - да :) – user1447679
'plans' - это объект, а не массив. –