タイムスタンプでJavascriptオブジェクトを正しく並べ替えることができないようです。私はこの投稿から考えを得たhereとこの投稿:here。タイムスタンプでjavascriptオブジェクトを並べ替える方法
問題:
1) object is already sorted on console log for some reason
2) sorting seems to have had no effect
コード:
var map = {1505932515: "some item", 1505932695: "some item", 1505832202: "some item", 1508425777: "some item", 1508872138: "some item", 1509022385: "some item", 1509034662: "some item"}
console.log(map); // Why is this already sorted anyway
var sortedMap = {};
Object.keys(map).sort().reverse().forEach(function(key) {
sortedMap[key] = map[key];
});
console.log(sortedMap);
ライブテスト:JS Bin
これは、Google Chromeの上のテストがあります。
あなたの最終的な結果は何をすべきですか?ちょうどタイムスタンプまたはタイムスタンプでソートされたオブジェクト? – JohanP
タイムスタンプでソートされた@JohanPオブジェクト –
JavaScriptオブジェクトキーは文字列です。キャストの後に、関数が '.sort(function(a、b){return a-b;}) 'に渡され、数値が正しく機能するようにする必要があります。 – PHPglue