簡體   English   中英

如何在javascript中以特定格式轉換日期? 不使用任何庫

[英]How can i convert date in specific format in javascript? Without using any library

 var options = {timeZone:'Asia/Tokyo'}; var date = new Date(1502722800000); date.toString('YYYYMMDD HH:MM'); console.log('formatted date '+date);

o/p - 2017 年 8 月 14 日星期一 20:30:00 GMT+0530 (IST)

但我想要這種日期格式的 o/p('YYYYMMDD HH:MM') 為 20170814 17:30

toString()不接受任何參數,不能像這樣使用。 我建議使用moment.js

例如:

 var formatted = moment(1502722800000).format('YYYY/MM/DD h:mm'); console.log('formatted date '+formatted);
 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>

如果您希望使用時區,您還可以添加Moment Timezones

SurisDziugas 是對的,隨着時間的推移,您可以像moment(1502722800000).format('YYYYMMDD HH:MM');一樣創建和格式化您的日期moment(1502722800000).format('YYYYMMDD HH:MM'); 我實際上停止使用 JS 原生Date對象, moment提供了更好的可能性。

不使用任何庫,這可能是您的長期解決方案。

 function formatDate(date) { var month = '' + (date.getMonth() + 1), day = '' + date.getDate(), year = "" + date.getFullYear(), hour = "" + date.getHours(), min = "" + date.getMinutes(); if (month.length < 2) month = '0' + month; if (day.length < 2) day = '0' + day; if (hour.length < 2) hour = '0' + hour; if (min.length < 2) min = '0' + min; return year+"/" + month +"/"+ day + " " + hour + ":" + min; } var options = { timeZone: 'Asia/Tokyo' }; var date = new Date(1502722800000); console.log(formatDate(date));

我希望這會有所幫助

問題是關於 JavaScript 中針對特定格式的解決方案,因此在沒有任何其他庫的情況下,直接的答案是(以Date.toISOString的墊片樣式):

function pad(number) {
    if (number < 10) {
        return '0' + number;
    }
    return number;
}

function toMyDateFormat(s) {
    return this.getUTCFullYear() +
        pad(this.getUTCMonth() + 1) +
        pad(this.getUTCDate()) +
        ' ' + pad(this.getUTCHours()) +
        ':' + pad(this.getUTCMinutes());
};

出於好奇,這是我沒有任何庫的最短解決方案:

function toMyDateFormat(d) {
    return d.toISOString().replace(/-/g,'').replace('T', ' ').substr(0,14);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM