現在、デスクトップとラップトップで異なる番号を取得しています。
6 に答える
getTime() は現地時間設定を使用します。時間設定は、次の 2 つの場所のいずれかで変更できます。
- OS (Windows など) が時間を管理している場合があります。タスクバーでダブルクリックします
- お使いの OS はシステム BIOS に依存しています。これは、マザーボードにマザーボードにバッテリーが取り付けられている (システム障害の場合に時間と設定を保持するため) 理由の 1 つです。BIOS の時間の変更は OS に反映される必要があります。その結果、JavaScript で
別の方法は、サーバーなどの 1 つのソースから時間を取得する独自の getTime 関数を作成することです。ネットワーク呼び出しを最小限に抑えたい場合は、この時間を一度プルし、同時に getTime() を呼び出すことをお勧めします。その後、必要に応じて getTime() を再度発行し、差を引いてサーバー時間に加算します。注:時間が重要な場合は、ユーザーがシステム クロックを簡単に変更できるため、これはお勧めしません。
それ以外の場合、コンピューターが同じネットワーク上にある場合は、スケジューラーとバッチ プロセスを使用して時刻を同期できます。完全ではありませんが、十分に近くなります。
JavaScript メソッドを使用するのではなく、ユースgetTime()ケースを再考する必要があります。
フォームの送信 (コメントやフォームの投稿など) にタイムスタンプを付ける場合は、POST を処理するときにサーバーにタイムスタンプを生成させる必要があります。
クライアント側で一貫した時刻が必要な場合は、タイムスタンプを返す単純な Web アプリケーションへの ajax 呼び出しを行うことを検討してください。自分で簡単に作成することも、 Yahoo のタイム サービスを使用することもできます。
クロックを同期します。
OS には、ネットワーク タイム サービスを使用するオプションが必要です。まだわずかな違いがある可能性がありますが、ほとんどの目的には十分な 1 秒または 2 秒を超えることはありません。それらをどれだけ近づける必要がありますか?
getTime()は、コンピューターのシステム時刻を取得します。ただし、本当に同期する必要がある場合は、使用しているWebサーバーと同期することをお勧めします。乾杯!
少なくともJavaScriptだけではできません。JavaScriptは、クライアントマシンのシステム情報を使用して、時刻を判別します。現在、それらが異なるタイムゾーンにある場合は、UTC()関数を使用してUTCベース(1970年1月1日の深夜からの秒数)で取得できますが、同期されていない可能性があります。
これにはさまざまな理由が考えられます。最も可能性の高い原因:
- 時計が同じように設定されていない可能性があります。1つ(または両方)が間違っている可能性があります。
- クロックは異なるタイムゾーンを使用している可能性があります。