jsでの時間操作

3002 ワード

まず、現在の時間をどうやって取得しますか?
var date = new Date()
//  :Tue Jul 02 2019 10:36:22 GMT+0800 (      )
続いて、関連パラメータを取得します.
var date = new Date();
    console.log("      :" + date)
    //      :Tue Jul 02 2019 10:43:55 GMT+0800 (      )
    var year = date.getFullYear(); //      
    console.log("   :" + year)
    //    :2019
    var mon = date.getMonth() + 1; //        
    console.log("    :" + mon)
    //     :7
    var day = date.getDate(); //       
    console.log("        " + day + " ")
    //         2 
    var weekday = date.getDay(); //         
    console.log("       " + weekday + " ")
    //        2 
    var h = date.getHours(); //      
    console.log("   :" + h + " ")
    //    :10 
    var m = date.getMinutes(); //      
    console.log("       :" + m + "  ")
    //        :43  
    var s = date.getSeconds(); //     
    console.log("       :" + s + " ")
    //        :55   
以上は、jsで該当時間パラメータを取得する全ての方法でしょう.でも、多くの場合、私達は2つの時間差を計算するのに使います.フォーマットが合わないので、いろいろな問題が発生します.私達は3つの点を覚えておけばいいです.
  • 文字列の間では数学演算ができない
  • です.
  • で差を作る二つのタイプは同じです.つまり、DateオブジェクトとDateオブジェクト、タイムスタンプとタイムスタンプは以下を見てください.
    1.他のフォーマットをDateオブジェクトに変換する
            JavaScript         
    console.log(new Date('September 7, 2018'))  // Fri Sep 07 2018 00:00:00 GMT+0800 (      )
    console.log(new Date('September 7, 2018, GMT+0800'))  // Fri Sep 07 2018 00:00:00 GMT+0800 (      )
    
                
    //  Unix          
    console.log(new Date(0))  // Thu Jan 01 1970 08:00:00 GMT+0800 (      )
    console.log(new Date(10000))  // Thu Jan 01 1970 08:00:10 GMT+0800 (      )
    console.log(new Date(1536307550023))  // Fri Sep 07 2018 16:05:50 GMT+0800 (      )
    //               
    console.log(new Date(-1536307550023))  // Tue Apr 26 1921 23:54:09 GMT+0800 (      )
    
                    
           : new Date( ,  ,  ,  ,  ,  )
    //     0   ,   0,   1,   8  
    console.log(new Date(2018, 8))  // Sat Sep 01 2018 00:00:00 GMT+0800 (      )
    console.log(new Date(2018, 8, 7))  // Fri Sep 07 2018 00:00:00 GMT+0800 (      )
    console.log(new Date(2018, 8, 7, 16))  // Fri Sep 07 2018 16:00:00 GMT+0800 (      )
    console.log(new Date(2018, 8, 7, 16, 7))  // Fri Sep 07 2018 16:07:00 GMT+0800 (      )
    console.log(new Date(2018, 8, 7, 16, 7, 50))  // Fri Sep 07 2018 16:07:50 GMT+0800 (      )
    console.log(new Date(2018, 8, 7, 16, 7, 50, 23))  // Fri Sep 07 2018 16:07:50 GMT+0800 (      )
    
    
    以上の部分のコードは略書から変更します.侵害があれば、削除に連絡してください.
    最後にもう一つ時間を現地化する方法を教えてください.
    var date = new Date();
    date.toLocaleString('zh-Hans-CN', {
        timeZone: "Asia/Beijing", 
        hourCycle: "h24",
        weekday: 'long', 
        year: 'numeric', 
        month: 'long', 
        day: 'numeric',
        hour: 'numeric',
        minute: 'numeric',
        second: 'numeric'
    })
    
    以上の部分のコードはgithubから変更されました.侵害があれば、削除に連絡してください.