19.01.2018, 11:35
|
Кандидат Javascript-наук
|
|
Регистрация: 02.05.2013
Сообщений: 111
|
|
Сообщение от ksa
|
Т.е. "сортировка" не является собственно задачей? Задача совсем в другом.
Тогда напиши что "дано" и что, таки нужно получить в итоге.
|
задача, хранить все подобъекты в основном объекте а не в массиве
при этом иметь возможность получить какое-то количество (заданное как константа), например 20, подобъектов с условием что определенное значение у них, например параметр v2, больше чем у остальных (т.е. теоретически это сортировка по убыванию по параметру v2 и взятие первых 20 объектов (по сути нужен их id))
|
|
19.01.2018, 11:40
|
Кандидат Javascript-наук
|
|
Регистрация: 02.05.2013
Сообщений: 111
|
|
Сообщение от Aetae
|
Значит придётся..
|
возможно что сортировка не единственное решение, потому и пришел на форум, ибо не хватает знаний, как еще, кроме сортировки, можно определить/найти объекты со значением выше чем у остальных (например, 20 подобъектов значение v2 у которых будет больше нежели у остальных подобъектов)
|
|
19.01.2018, 11:46
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
Cache,
сделайте ваш обьект для примера, ключей на 10
|
|
19.01.2018, 11:49
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,587
|
|
Сообщение от Cache
|
например 20, подобъектов с условием что определенное значение у них, например параметр v2, больше чем у остальных (т.е. теоретически это сортировка по убыванию по параметру v2 и взятие первых 20 объектов (по сути нужен их id))
|
arr=[
{
v1:5,
v2:4,
v3:0,
id:123
},{
v1:0,
v2:3,
v3:5,
id:456
},{
v1:2,
v2:0,
v3:7,
id:321
} //, ...
];
var result = arr.sort(function(a, b){
return b.v2 - a.v2
}).slice(0, 20)
__________________
29375, 35
|
|
19.01.2018, 12:06
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
Aetae,
.map(function(a) {
return a.id;
})
|
|
19.01.2018, 12:23
|
Кандидат Javascript-наук
|
|
Регистрация: 02.05.2013
Сообщений: 111
|
|
Aetae,
у меня уже есть такая функция для массива, я же говорю про объект, когда изначально будет объект а не массив, можно ли получить такие данные
|
|
19.01.2018, 12:28
|
Кандидат Javascript-наук
|
|
Регистрация: 02.05.2013
Сообщений: 111
|
|
только у меня она несколько сложнее, с учетом того что сортировка нужна не только по v2 но и по v1 и по v3 и т.д.
|
|
19.01.2018, 12:29
|
Кандидат Javascript-наук
|
|
Регистрация: 02.05.2013
Сообщений: 111
|
|
Сообщение от рони
|
Aetae,
.map(function(a) {
return a.id;
})
|
map на сколько помню, опять же работает только с массивами
т.е. в любом случае, на сколько я понял, преобразовывать в массив? поиск по объекту с такими условиями не возможен?
|
|
19.01.2018, 12:31
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
Сообщение от Cache
|
можно ли получить такие данные
|
да, вы зачем кота за хвост тяните.
Сообщение от ksa
|
Тогда напиши что "дано" и что, таки нужно получить в итоге.
|
|
|
19.01.2018, 12:34
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,112
|
|
Сообщение от Cache
|
поиск по объекту с такими условиями не возможен?
|
а зачем, если можно решить через массив?
|
|
|
|