Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.01.2021, 09:28
Аспирант
Отправить личное сообщение для dc65k Посмотреть профиль Найти все сообщения от dc65k
 
Регистрация: 19.05.2020
Сообщений: 46

Как правильно отсортировать свойства данные по дате и времени?
Всем привет, подскажите, пожалуйста как правильно отсортировать следующие данные по дате и времени?
Чтобы затем с помощью, например объекта Date, получить необходимые данные.
const dates = [
    {date: "14.01.2021T22:09:12", title: 1},
    {date: "14.01.2021T22:08:17", title: 2},
    {date: "14.01.2021T21:58:03", title: 4},
    {date: "14.01.2021T21:54:38", title: 5},
    {date: "14.01.2021T22:04:12", title: 3},
    {date: "14.01.2021T21:51:24", title: 6},
    {date: "14.01.2021T21:48:35", title: 7},
    {date: "14.01.2021T21:33:49", title: 8},
    {date: "14.01.2021T21:07:42", title: 10},
    {date: "14.01.2021T21:05:22", title: 11},
    {date: "14.01.2021T21:09:09", title: 9},
    {date: "14.01.2021T21:03:57", title: 12},
    {date: "14.01.2021T21:02:14", title: 13},
    {date: "14.01.2021T20:21:21", title: 14},
    {date: "14.01.2021T19:59:39", title: 15},
    {date: "14.01.2021T19:47:47", title: 17},
    {date: "14.01.2021T19:40:28", title: 18},
    {date: "14.01.2021T19:49:24", title: 16},
    {date: "14.01.2021T19:29:51", title: 19},
    {date: "14.01.2021T19:28:40", title: 20},
    {date: "14.01.2021T14:08:19", title: 21},
    {date: "14.01.2021T13:59:29", title: 22},
    {date: "14.01.2021T13:56:22", title: 24},
    {date: "14.01.2021T13:56:14", title: 25},
    {date: "14.01.2021T13:55:50", title: 26},
    {date: "14.01.2021T13:55:42", title: 27},
    {date: "14.01.2021T13:55:29", title: 28},
    {date: "15.01.2021T07:07:19", title: 0},
    {date: "14.01.2021T13:56:57", title: 23},
    {date: "14.01.2021T11:33:55", title: 29},
    {date: "14.01.2021T11:14:28", title: 30},
    {date: "13.01.2021T18:59:53", title: 31},
    {date: "13.01.2021T17:18:11", title: 32},
    {date: "13.01.2021T17:11:35", title: 33},
    {date: "13.01.2021T13:46:57", title: 40},
    {date: "13.01.2021T13:35:57", title: 41},
    {date: "13.01.2021T13:05:20", title: 42},
    {date: "13.01.2021T13:02:12", title: 43},
    {date: "13.01.2021T12:56:21", title: 44},
    {date: "13.01.2021T17:00:17", title: 34},
    {date: "13.01.2021T16:59:36", title: 35},
    {date: "13.01.2021T16:56:56", title: 36},
    {date: "13.01.2021T16:49:00", title: 37},
    {date: "13.01.2021T15:06:49", title: 38},
    {date: "13.01.2021T14:03:52", title: 39},
    {date: "13.01.2021T12:55:43", title: 45},
    {date: "13.01.2021T12:30:40", title: 46},
    {date: "13.01.2021T11:50:36", title: 47},
    {date: "12.01.2021T15:06:30", title: 48},
    {date: "12.01.2021T13:36:05", title: 49},
    {date: "12.01.2021T13:13:29", title: 50},
    {date: "12.01.2021T13:11:55", title: 51},
    {date: "12.01.2021T13:03:05", title: 52},
    {date: "12.01.2021T12:58:25", title: 53},
    {date: "12.01.2021T12:56:30", title: 54},
    {date: "12.01.2021T12:43:40", title: 55},
    {date: "12.01.2021T11:03:03", title: 56},
    {date: "12.01.2021T11:01:49", title: 57},
    {date: "12.01.2021T11:01:13", title: 58},
    {date: "12.01.2021T11:00:50", title: 59},
]

Последний раз редактировалось dc65k, 15.01.2021 в 09:56.
Ответить с цитированием
  #2 (permalink)  
Старый 15.01.2021, 10:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

dc65k,
а можно дату в другом формате?
Ответить с цитированием
  #3 (permalink)  
Старый 15.01.2021, 10:36
Аспирант
Отправить личное сообщение для dc65k Посмотреть профиль Найти все сообщения от dc65k
 
Регистрация: 19.05.2020
Сообщений: 46

На самом деле вопрос у меня в том, как лучше именно с таким форматом сделать сортировку. Я понимаю, что можно сделать, используя регулярное выражение, затем new Date и далее .sort().
Ответить с цитированием
  #4 (permalink)  
Старый 15.01.2021, 11:02
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

dc65k,
вы сами ответили на свой вопрос.
Ответить с цитированием
  #5 (permalink)  
Старый 09.02.2021, 12:48
Новичок на форуме
Отправить личное сообщение для flisterseven Посмотреть профиль Найти все сообщения от flisterseven
 
Регистрация: 09.02.2021
Сообщений: 1

Дайте следующий массив объектов, мне нужно отсортировать их по полю даты по возрастанию.

var myArray = [
{
имя: "Джо Блоу",
дата: "31 октября 2016 г., 00:00:00 GMT-0700 (PDT)"
},
{
имя: "Сэм Снид",
дата: "30 октября 2016 г., 00:00:00 GMT-0700 (PDT)"
},
{
имя: "Джон Смит",
дата: «Сб, 29 октября 2016, 00:00:00 GMT-0700 (PDT)»
}
];
так что в этом примере конечным результатом будут Джон Смит, Сэм Снид и Джо Блоу.

Я пытаюсь использовать lodash _.sortBy (), но не могу выполнить сортировку, как бы я ни пытался ее использовать:

_.sortBy (myArray, function (dateObj) {
дата возвратаObj.date;
});
или

_.sortBy (myArray, 'дата');
Что мне нужно изменить, чтобы мой массив был правильно отсортирован? У меня также есть Moment.js, поэтому я могу использовать его для форматирования строки даты, если это необходимо. Я попытался преобразовать свойство даты с помощью .unix (), но это не имело значения.

Благодарю. psiphone for pc jiofi.local.html

Последний раз редактировалось flisterseven, 09.02.2021 в 20:49.
Ответить с цитированием
  #6 (permalink)  
Старый 09.02.2021, 13:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

flisterseven,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #7 (permalink)  
Старый 09.02.2021, 13:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

sortBy lodash and moment
flisterseven,

<!DOCTYPE html>
<html>
<head>
    <title>Untitled</title>
    <meta charset="utf-8">
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.20/lodash.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/locale/ru.js"></script>
</head>
<body>
<script>
let myArray = [{
        имя: "Сэм Снид",
        дата: "30 октября 2016 г., 00:00:00 GMT-0700 (PDT)"
    },
    {
        имя: "Джон Смит",
        дата: "29 октября 2016 г., 00:00:00 GMT-0700 (PDT)"
    },
    {
        имя: "Джо Блоу",
        дата: "31 октября 2016 г., 00:00:00 GMT-0700 (PDT)"
    },
    {
        имя: "Алекс Томпсон",
        дата: "29 октября 2016 г., 00:00:00 GMT-0700 (PDT)"
    }
];
moment.locale('ru');
myArray = _.sortBy(myArray, [({ дата }) => moment( дата, 'LLL').valueOf(), 'имя']);
document.write(`<pre>${JSON.stringify(myArray, "", 4)}</pre>`)
</script>
</body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно отрендерить данные на react с разрывом? s24344 Элементы интерфейса 0 28.01.2019 19:35
Как правильно отсортировать свойства с удалением дубликатов (native js)? s24344 Элементы интерфейса 2 23.01.2019 17:46
как отсортировать пришедшие данные ajax? FRIE jQuery 9 15.07.2010 16:22
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20
Как правильно оформить Send() Алекс97 AJAX и COMET 20 30.10.2008 19:19