1. 程式人生 > >js轉換Date日期格式以及DateTime的一些總結

js轉換Date日期格式以及DateTime的一些總結

有時候做專案會用到js的date日期格式,因為Date()返回的格式不是我們需要的,

Date()返回格式:

Thu Mar 19 2015 12:00:00 GMT+0800 (中國標準時間)

而我們則需要這樣的格式:

2015-3-19 12:00:00

除非是在後臺處理好時間格式,然後在頁面直接顯示。

那如何用js格式化date日期值呢?

1.js方法返回值:2015-03-19

[javascript] view plain copy
  1. var formatDate = function (date) {  
  2.     var y = date.getFullYear();  
  3.     var m = date.getMonth() + 1;  
  4.     m = m < 10 ? '0' + m : m;  
  5.     var d = date.getDate();  
  6.     d = d < 10 ? ('0' + d) : d;  
  7.     return y + '-' + m + '-' + d;  
  8. };  
2.js方法返回值:2015-03-19 12:00
[javascript] view plain copy
  1. var formatDateTime = function (date) {  
  2.     var y = date.getFullYear();  
  3.     var m = date.getMonth() + 1;  
  4.     m = m < 10 ? ('0'
     + m) : m;  
  5.     var d = date.getDate();  
  6.     d = d < 10 ? ('0' + d) : d;  
  7.     var h = date.getHours();  
  8.     var minute = date.getMinutes();  
  9.     minute = minute < 10 ? ('0' + minute) : minute;  
  10.     return y + '-' + m + '-' + d+' '+h+':'+minute;  
  11. };  

呼叫:formatDate(Date())   formatDate(Date())

如何將2015-03-12 12:00 轉換成標準時間()?

Thu Mar 19 2015 12:00:00 GMT+0800 (中國標準時間)

js方法返回值:Thu Mar 19 2015 12:00:00 GMT+0800 (中國標準時間)

[javascript] view plain copy
  1. var parserDate = function (date) {  
  2.     var t = Date.parse(date);  
  3.     if (!isNaN(t)) {  
  4.         returnnew Date(Date.parse(date.replace(/-/g, "/")));  
  5.     } else {  
  6.         returnnew Date();  
  7.     }  
  8. };  

呼叫:parserDate("2015-03-19 12::00:00")

接下來是關於C# DateTime的一些總結

 //本年度第一天
          var aa=  DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();
          //本年度最後一天
          var ba = DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();
          //上年度第一天, 
          var ca = DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();
          //上年度第最後一天, 
          var da = DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();
          //下年度第一天
          var ea = DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();
          //下年度最後一天
          var fa = DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();
          //本季度第一天; 
          var ga = DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day);
          //本季度的最後一天
          var ha = DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
          //下季度的第一天
          var ia = DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
          // 下季度最後一天
          var ja = DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
          // 上季度第一天
          var ka = DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day);
          // 上季度最後一天
          var la= DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day).AddDays(-1).ToShortDateString();
這裡跟上面的差別只是沒有精確到時分
 //本季度     
            var g = DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
            //同理,本季度的最後一天就是下季度的第一天減一
            var h = DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
            //下季度
            var i = DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
            var j = DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
            //上季度
            var k = DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
            var l = DateTime.Parse(DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();