私のjavascriptには2つの変数があります。メッセージ関数:var message
タイムスタンプ関数: var date
(タイプはタイムスタンプです)。
これで、タイムスタンプに従ってメッセージを格納する配列ができました。何かのようなもの
var input = []; //dynamic array to store both message and date
var date = new Date(update.data.history[i].timestamp * 1000); //Getting from Json object
var date_input = date.toLocaleTimeString();
var message = update.data.history[i].message;
for (i to length)
{
input.push({ key: date_input, value: message }); //Key refers to date, and value to message
}
input.sort(sort_by(key,true,parseInt));
私の関数 sort_by
var sort_by = function(field, reverse, primer){
var key = function (x) {return primer ? primer(x[field]) : x[field]};
return function (a,b) {
var A = key(a), B = key(b);
return (A < B ? -1 : (A > B ? 1 : 0)) * [1, -1][+!!reverse];
}
}
ここで、firebug を使用してデバッグを試みたところ、並べ替え機能が機能していないことに気付きました。タイムスタンプをキーとして使用していますが、まだ運がありません。とにかく、タイムスタンプに従って並べ替えて表示できますか。SOで他のソートソリューションを試しましたが、タイムスタンプのようなデータ型がある場合にソートする別の方法があると思いますか?