Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 09.02.2019, 13:46
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от AntonMs
Дело в том что желательно построить алгоритм так чтобы тот объект не менять.
А откуда у вас появляется этот объект? В JavaScript не возможно получить ключи в порядке их создания в общем случае, вы знаете какие ключи можно получить в порядке создания, по каким-то причинам не можете то применить.

Если у вас есть возможность получить исходный код для этого объекта(он у вас есть!), то можно его разобрать при помощи acorn или esprima или *ваш любимый парсер для экспериментов*... но всё-же я рекомендую вам переделать этот объект в массив или Map

(или добавьте префикс для ключей, например "_", т. е. ключ "abc123" превратится в "_abc123", это ещё один вариант)

Последний раз редактировалось Malleys, 09.02.2019 в 13:59.
Ответить с цитированием
  #22 (permalink)  
Старый 11.02.2019, 00:59
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

Кто следит за темой подскажите ещё раз
var a = [
{"param1" : 1, "param1" : 1, "param2": 2, "param3" : 3},
{"param1" : 11, "param2": 22, "param3" : 33},
{"param1" : 111, "param2": 222, "param3" : 333}
];
:( 
var function_array_sort = function (array_sort, sort_param){
 return array_sort.sort(function (a, b){ return a.sort_param - b.sort_param })
};

console.log( function_array_sort(a, "сюда нужно передать 'param1'") );
Ответить с цитированием
  #23 (permalink)  
Старый 11.02.2019, 03:00
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

var a = [
	{ param1: 1,   param2: 2,   param3: 3   },
	{ param1: 11,  param2: 22,  param3: 33  },
	{ param1: 111, param2: 222, param3: 333 }
];

function functionArraySort (arraySort, sortParam){
	return arraySort.sort(function (a, b) {
		return a[sortParam] - b[sortParam];
	});
};
	
console.log(functionArraySort(a, "param1"));
Ответить с цитированием
  #24 (permalink)  
Старый 11.02.2019, 18:39
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

Вот честное слово, вчера делал тоже самое!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Полностью удалить объект 1lider Events/DOM/Window 8 07.06.2018 18:20
помогите отсортировать объект? san40511 Javascript под браузер 3 25.08.2015 11:08
Помогите определить массив или объект ksnovich Общие вопросы Javascript 1 09.03.2015 17:12
Объект ajax и приостановка функции kilohertz_. AJAX и COMET 5 18.01.2015 16:33
Получить объект содержащий caller no_alex Общие вопросы Javascript 14 20.03.2009 21:37