JavaScript を使用して 2 つの時間の差を計算しようとしています。それは単なる基本的な数学ですが、 and を使用しているときに問題があるようJSON.stringify()
ですJSON.parse()
。
なぜJSON.stringify()
日付に関数を適用するのか疑問に思われる場合は、ローカル ストレージを使用してクライアント側にデータを保存し、クライアントが再び Web サイトにアクセスするたびにそれを使用するためです (より多くの要求を行うよりも、その方が高速です)。サーバーへ)。そのデータは通常、時々更新されるため (別の Web サイトから API を介してデータを取得しています)、data_update
変数を設定し、他のデータと一緒に保存しています。
data_update
そのようにして、ローカルストレージから保存されたデータを取得し、 (日付/時刻)とチェックが行われた時刻/日付の違いを確認し、それが週/日/etcよりも大きいかどうかを確認します.
これが、JSON 関数を使用している理由です。Date()
私の問題は、ローカル ストレージからデータを解析しているときに、日付がオブジェクトと異なるように見えることです。
次の操作を実行しようとしています:
var x = JSON.parse(JSON.stringify(new Date()));
var y = JSON.parse(this.get_local_storage_data(this.data_cache_key)); // the data object stored on local storage
var q = y.data_update; // this is the variable where the Date() was stored
console.log(Math.floor((x-q)/1000));
上記は を返しnull
ます。Math.floor(x)
また、結果を見たいときはまた戻ってきますnull
。
では、この状況で何ができますか?これに対する修正はありますか?