【发布时间】:2016-07-16 21:16:24
【问题描述】:
我正在尝试在 Google 脚本中解析多个 subreddit 提要。我可以调用这个 Google 脚本 (redditFeeds()),它会将标题、链接和日期返回到我的电子表格。但是,我想按日期对帖子进行排序,以便我可以首先看到最新的帖子。我已经尝试以各种方式在数组上使用 sort() 并且无法按降序日期排序。我什至尝试将日期转换为 Date 对象,但这并没有解决它。
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 arrays sorting google-apps-script