アクティビティを作成および管理するアプリケーションがあります。Knockout.jsを使用して、監視可能な配列でアクティビティを保持します。新しいアクティビティが作成されるたびに、それは配列に挿入されます。アクティビティプロパティの1つは日付です。UIに正しく表示するために、新しいアクティビティを作成した後、日付順にアクティビティを並べ替えたいと思います。これは私が使用する関数です。
self.Activities.unshift(activity);
self.Activities.sort(function(a, b) {
var dateA = new Date(a.date() + " 00:00:00");
var dateB = new Date(b.date() + " 00:00:00");
return dateA > dateB;
});
また、Firefox(v 16.0.2)では完全に機能しますが、Chrome(v 23.0.1 ...)、Safari、またはIEでは機能しません。
なんで?回避策は何ですか?もしあれば?