JavaScript 在日期的處理方面非常靈活,可以把日期轉化為各種不同的字符串格式,以滿足不同的需求。本文將介紹幾種常見的日期轉化為字符串的方法,并通過實際示例進行說明。
使用 Date 對象的 toString() 方法
Date 類型內置了一個 toString() 方法,可以將日期轉化為字符串。該方法返回的字符串格式是一定的,并且是英文格式。例如:
var date = new Date(); console.log(date.toString());運行結果為:Sat Aug 08 2020 09:19:05 GMT+0800 (中國標準時間) 可以看到,該方法返回的字符串格式是由周幾、月份、日期、年份、時分秒等組合而成,并且字符串包含了時區信息。 使用 Date 對象的 toUTCString() 方法 toUTCString() 方法與 toString() 方法類似,也是將日期轉化為字符串。比較特殊的是,該方法返回的是 UTC 時間格式的字符串。例如:
var date = new Date(); console.log(date.toUTCString());運行結果為:Sat, 08 Aug 2020 01:19:05 GMT 可以看到,該方法返回的字符串格式是由周幾、日期、月份、年份、時分秒等組合而成,但是沒有時區信息。 使用 Date 對象的 toDateString() 方法 toDateString() 方法將日期轉化為字符串,只包含了日期信息,不包含時間和時區信息。例如:
var date = new Date(); console.log(date.toDateString());運行結果為:Sat Aug 08 2020 可以看到,該方法返回的字符串格式只包含了周幾、日期、月份、年份信息,沒有時間和時區信息。 使用 Date 對象的 toISOString() 方法 toISOString() 方法將日期轉化為 ISO 格式的字符串,包含了年月日和時分秒信息,并且使用 UTC 時間表示,例如:
var date = new Date(); console.log(date.toISOString());運行結果為:2020-08-08T01:19:05.824Z 可以看到,該方法返回的字符串格式是由年份、月份、日期、時分秒等組合而成,并且使用 Z 來表示時區信息。 使用自定義格式的字符串 除了使用內置的函數將日期轉化為字符串外,還可以通過自定義格式來實現日期轉化。以下是一個常見的方法:
function formatDate(date, format) { var year = date.getFullYear(); var month = date.getMonth() + 1; var day = date.getDate(); var hour = date.getHours(); var minute = date.getMinutes(); var second = date.getSeconds(); format = format.replace("yyyy", year); format = format.replace("MM", padLeft(month, 2)); format = format.replace("dd", padLeft(day, 2)); format = format.replace("HH", padLeft(hour, 2)); format = format.replace("mm", padLeft(minute, 2)); format = format.replace("ss", padLeft(second, 2)); return format; } function padLeft(value, width) { value = value + ""; while (value.length< width) { value = "0" + value; } return value; } var date = new Date(); console.log(formatDate(date, "yyyy-MM-dd HH:mm:ss"));執行結果為:2020-08-08 09:19:05 可以看到,自定義格式的字符串可以隨意設計,比如將年份、月份、日期、時分秒等信息按照不同的順序組合,或者可以添加自己需要的文字信息。 總結 JavaScript 提供了豐富的日期轉化為字符串的方法,使用起來非常靈活??梢愿鶕嶋H需求選擇合適的方法,同時也可以通過自定義格式的字符串來實現更多的定制化需求。