Я пытаюсь разобрать несколько субподписных фидов в скрипте Google. Я могу назвать этот скрипт Google (redditFeeds()
), и он возвращает название, ссылку и дату в мою таблицу. Тем не менее, я хочу сортировать сообщения по дате, чтобы сначала увидеть последние сообщения. Я попытался использовать sort() в массиве различными способами и не могу получить что-либо по дате. Я даже пытался преобразовать дату в объект Date, и это не исправило.Сортировка массива в javascript на основе даты
function redditFeeds() {
var entries_array = [];
var subreddit_array = ['https://www.reddit.com/r/funny/top/.rss','https://www.reddit.com/r/news/top/.rss']
for (var s = 0; s < subreddit_array.length; s++) {
var xml = UrlFetchApp.fetch(subreddit_array[s]).getContentText();
var document = XmlService.parse(xml);
var root = document.getRootElement();
var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom');
var entries = document.getRootElement().getChildren('entry', atom);
for (var i = 0; i < entries.length; i++) {
var title = entries[i].getChild('title', atom).getText();
var title = entries[i].getChild('link', atom).getText();
var link = entries[i].getChild('link', atom).getAttribute('href').getValue();
var date = entries[i].getChild('updated', atom).getValue();
entries_array.push([title, link, date]);
}
}
//return entries_array;
//doesn't work
//entries_array.sort(function(a,b) {
// return a.date - b.date;
//});
//also not working
return entries_array.sort(function(a,b) {
new Date(a.date).getTime() - new Date(b.date).getTime();
});
}
Возможный дубликат [Сортировка массива объектов JavaScript] (http://stackoverflow.com/questions/979256/sorting-an-array-of-javascript-objects) – Tibrogargan