ホームページ ウェブフロントエンド jsチュートリアル javascript_javascript スキルの日付関数 new Date() に関するブラウザの互換性の問題

javascript_javascript スキルの日付関数 new Date() に関するブラウザの互換性の問題

May 16, 2016 pm 03:40 PM
date 日付関数 ブラウザの互換性

同じ言語である JavaScript でも、異なるブラウザでは言語互換性の問題があります。これは基本的に、異なるブラウザが異なる言語標準と実装をサポートしているためです。この記事では、この問題を分析するために、新しい Date に基づいて Date オブジェクトを作成します。

1. 問題は、開始時間と終了時間の空間が値を正しく転送できないことです

このページでは、時間コンポーネントを使用して時間選択ボックスを開発しましたが、Firefox では正しく動作しないことがわかりましたが、Chrome では正常に動作しました。 何が問題ですか?

2. 問題分析

分析の結果、問題の原因は次のコードであることが判明しました:

var timestart = '2010-05-04';
var timeend = '2015-09-05';
var time1 = (timestart+' 00:00:00').toString();
var time2 = (timeend+' 23:59:59').toString();
timestart = new Date(time1);
timeend = new Date(time2);
ログイン後にコピー

問題は、新しい Date(time1) コンストラクターが Date オブジェクトを正しく生成できず、その値が NaN であることです。何が問題なのでしょうか?

3. さまざまなブラウザでのパフォーマンス

IE での実行:

Firefox での実行:

Chrome での実行:

上記の分析により、この JavaScript スクリプトは Chrome では正しく実行できますが、他のブラウザではエラーが報告されることがわかります。

4. 正しいアプローチ

正しいアプローチは以下にリストされています:

 var time1 = (timestart+' 00:00:00').toString();
 var time2 = (timeend+' 23:59:59').toString();
 timestart = new Date(Date.parse(time1.replace(/-/g,"/"))).getTime();
 timeend = new Date(Date.parse(time2.replace(/-/g,"/"))).getTime();
ログイン後にコピー

主な変更点は、デフォルトの日付形式の変換です。「/」形式に基づく日付文字列は、さまざまなブラウザで広くサポートされています。「-」で接続された日付文字列は、Chrome でのみ使用できます。

5. 知識ポイントのまとめ

「2015-09-05」は、さまざまなブラウザーで new Date(str) を使用して日付オブジェクトを正しく生成するために使用できません。 正しい使用法は「2015/09/06」です。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

現在のタイムスタンプに基づいてファイル/フォルダーを作成し、名前を付ける方法 現在のタイムスタンプに基づいてファイル/フォルダーを作成し、名前を付ける方法 Apr 27, 2023 pm 11:07 PM

システムのタイムスタンプに基づいてファイルやフォルダーを自動的に作成し、名前を付ける方法を探している場合は、ここが最適な場所です。このタスクを達成するための非常に簡単な方法があります。作成されたフォルダーまたはファイルは、ファイルのバックアップの保存、日付に基づいたファイルの並べ替えなど、さまざまな目的に使用できます。この記事では、Windows 11/10 でファイルとフォルダーを自動的に作成し、システムのタイムスタンプに基づいて名前を付ける方法を、非常に簡単な手順で説明します。使用される方法はバッチ スクリプトであり、非常に簡単です。この記事を楽しんで読んでいただければ幸いです。セクション 1: システムの現在のタイムスタンプに基づいてフォルダーを自動的に作成し、名前を付ける方法 ステップ 1: まず、フォルダーを作成する親フォルダーに移動します。

PHP 警告: date() はパラメータ 2 が長いことを予期しており、解決策が与えられた文字列です PHP 警告: date() はパラメータ 2 が長いことを予期しており、解決策が与えられた文字列です Jun 22, 2023 pm 08:03 PM

PHP プログラムを使用して開発する場合、警告メッセージやエラー メッセージが表示されることがよくあります。その中で、表示される可能性のあるエラー メッセージの 1 つは、PHPWarning:date()expectsparameter2tobelong,stringgiven です。エラー メッセージの意味は次のとおりです。関数 date() の 2 番目のパラメーターは長整数 (long) であることが予期されていますが、実際に渡されるのは文字列 (string) です。それで、私たちは

Java で時刻を処理する Date クラスと SimpleDateFormat クラスを使用するメソッドと使用法の紹介 Java で時刻を処理する Date クラスと SimpleDateFormat クラスを使用するメソッドと使用法の紹介 Apr 21, 2023 pm 03:01 PM

1. はじめに java.util パッケージの Date クラスは、ミリ秒単位の正確な特定の時刻を表します。 Date クラスを使用したい場合は、Date クラスを導入する必要があります。 Date クラスに年を直接書き込んでも、正しい結果は得られません。 Java の日付は 1900 年から計算されるため、最初のパラメータに 1900 年からの年数を入力すれば、必要な年が得られます。月は 1 を引く必要がありますが、日は直接挿入できます。この方法はほとんど使用されず、2 番目の方法が一般的に使用されます。 yyyy-MM-ddなどの特定の形式に従った文字列をDate型データに変換する方法です。まず、Date型Dateのオブジェクトを定義します。

Date クラスの getTime() メソッドを使用して日付のミリ秒表現を取得する方法 Date クラスの getTime() メソッドを使用して日付のミリ秒表現を取得する方法 Jul 24, 2023 am 11:42 AM

Date クラスの getTime() メソッドを使用して日付のミリ秒表現を取得する方法 Java では、Date クラスは日付と時刻を表すために使用されるクラスです。これは、日付オブジェクトに関する情報を操作および取得するための便利なメソッドを多数提供します。その中でも getTime() メソッドは Date クラスの重要なメソッドであり、日付オブジェクトのミリ秒表現を返すことができます。次に、このメソッドを使用して日付のミリ秒表現を取得する方法を詳しく説明し、対応するコード例を示します。 Date クラスの使用

Python のカレンダーと日付のライブラリにはどのようなオプションがありますか? Python のカレンダーと日付のライブラリにはどのようなオプションがありますか? Oct 21, 2023 am 09:22 AM

Python には、使用できる優れたカレンダー ライブラリと日付ライブラリが多数あり、これらのライブラリは日付とカレンダー関連の操作を処理するのに役立ちます。次に、いくつかの一般的な選択肢を紹介し、対応するコード例を示します。 Datetime ライブラリ: datetime は、Python の組み込みの日付と時刻処理モジュールであり、日付、時刻、時差、その他の操作の処理に使用できる、日付と時刻に関連する多くのクラスとメソッドを提供します。サンプルコード: importdatetime#現在の日付を取得する

Java で Stringbuild、Date、Calendar クラスを使用する方法 Java で Stringbuild、Date、Calendar クラスを使用する方法 May 22, 2023 pm 04:52 PM

Stringbuild クラス String クラスのオブジェクト内容は変更できないため、結合するたびに新しい String オブジェクトが構築され、時間がかかり、メモリ領域を無駄に消費します。このとき、StringBuild を通じてこの問題を解決する必要があります。 Javaが提供するクラスです。StringBuilderは、変数文字列とも呼ばれます。Stringと同様の文字列バッファであり、コンテナとみなすことができます。コンテナには多くの文字列を保持できます。変数とは、StringBuilderオブジェクトの内容を意味します構築メソッド publicStringBuilder(): 空のバッファを作成します publicStringBuilder(Stringsr

スプリングブートがタイムスタンプを返すように日付フィールドを構成する問題を解決する方法 スプリングブートがタイムスタンプを返すように日付フィールドを構成する問題を解決する方法 May 20, 2023 am 11:16 AM

問題が発生しました。springboot を 2.0 にアップグレードした後、データベースから見つかった日付が Date を使用して受信され、最終的にフロントエンドに直接返されました。Google では yyyy-MM-ddHH:mm:ss 形式で正常に表示されました。クロム。ただし、IE ブラウザに表示される日付は「文字化け」します。これは、springboot1.x バージョンがデフォルトで Date フィールドにタイムスタンプを返し、Google と IE がタイムスタンプを yyyy-MM-ddHH:mm:ss ;After に自動的に変換するためです。 springboot2.0 では、spring は Date フィールドを (構成なしで) UTC 文字列に自動的に変換するため、日付をタイムスタンプまたは y に変換する必要があります。

JavaでDate日時クラスを使用する方法 JavaでDate日時クラスを使用する方法 May 10, 2023 pm 05:25 PM

java.util パッケージは、現在の日付と時刻をカプセル化する Date クラスを提供します。 Date クラスは、Date オブジェクトをインスタンス化するための 2 つのコンストラクターを提供します。最初のコンストラクターは、現在の日付と時刻を使用してオブジェクトを初期化します。 Date() 2 番目のコンストラクターは、1970 年 1 月 1 日からのミリ秒数を示すパラメーターを受け取ります。 Date オブジェクトの作成後、次のメソッドを呼び出すことができます。 シリアル番号 メソッドの説明 1booleanafter(Datedate)、このメソッドを呼び出す Date オブジェクトが指定された日付以降に true を返す場合、それ以外の場合は false2booleanbefore(Datedate) を返します。

See all articles