Google Scriptで複数のサブディレクトリフィードを解析しようとしています。このGoogle Script(redditFeeds()
)と呼ぶと、タイトル、リンク、日付がスプレッドシートに返されます。しかし、私は最新の投稿を最初に見ることができるように日付順に投稿を並べ替えたいです。私はさまざまな方法で配列の並べ替え()を使用しようとし、降順で何も並べ替えを取得することはできません。私は日付オブジェクトを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