7
javascriptでISO 8601の日付を各文字列のDateオブジェクトを作成するのではなく、文字列として比較したいと思います。javascriptでISO 8601の日付文字列を比較
var date_array = ['2012-10-01','2012-11-27','2012-12-23'];
console.log(date_array[0] < date_array[1]) // gives true
console.log(date_array[1] > date_array[2]) // gives false
これは、文字列の比較が日付文字列ごとにオブジェクトを作成してオブジェクトを比較するよりも速くなければならないと考えているためです。
これらの比較は、一部のブラウザでは正常に動作するようです。この種の
アルファベット
辞書型の文字列比較がすべてのブラウザで機能するとは思いますか? Dateオブジェクトを使用するよりも実際にこの日付比較方法が高速ですか?
フォーマットが大単位→小単位であり、すべての文字列が各フィールドの長さが同じであれば(必要に応じて先頭に0を記入してください)、問題はありません。 – nhahtdh
関連リンク:[ここ](http://jsperf.com/date-object-creation/2)は、_Date_コンストラクタを使用した場合のops/secを示します。[here](http://jsperf.com/operator-vs -localecompage/3)は文字列の比較と[ここ](http://jsperf.com/inequality-str-vs-int)int比較です。 –
[wikipedia](https://en.wikipedia.org/wiki/ISO_8601#General_principles)によると、ISO 8601の日付の構成要素は辞書順になっていますので、上記の作業はうまくいくはずです – Dogoku