dd-mm-yyyy 形式の文字列を JavaScript の日付オブジェクトに変換します
dd-mm-yyyy 形式の文字列を変換しようとしていますDate オブジェクトに挿入すると、「-」の存在により「無効な日付」エラーが発生する可能性があります。
解決策 1: "-" で分割
文字列を日、月、年のコンポーネントに分割します。
var dateStr = $("#datepicker").val(); var dateParts = dateStr.split("-"); var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
解決策 2: 正規表現を使用する(正規表現)
正規表現を使用して文字列から個々のコンポーネントを抽出します:
var regex = /(\d{2})-(\d{2})-(\d{4})/; var date = new Date(dateStr.replace(regex, "//"));
推奨: "-" で分割
正規表現のほうが柔軟性が高くなりますが、固定形式の文字列を解析する場合は、より単純なため、「-」で分割することをお勧めします。特にコードの複数の部分で解析ロジックを再利用している場合は、より効率的です。
再利用性と最新の JavaScript
再利用性を高めるために、解析ロジックをラップできます。関数内:
function parseDate(dateStr) { var dateParts = dateStr.split("-"); return new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); }
最新の JavaScript では、配列の構造化を使用して、解析中:
const parseDate = (dateStr) => { const [day, month, year] = dateStr.split("-"); return new Date(year, month - 1, day); };
以上がdd-mm-yyyy 文字列を JavaScript 日付オブジェクトに安全に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。