How to convert Date to timestamp using MomentJS?

前端 未结 4 1689
醉梦人生
醉梦人生 2021-01-30 23:50

I used MomentJS to convert local date to UTC date using the following way:

相关标签:
4条回答
  • 2021-01-31 00:13

    You said:

    I used MomentJS to convert local date to UTC date using the following way: moment("2016-10-11 18:06:03").tz("Europe/Paris").format()

    That doesn't do that. That converts a local value to Paris time, and emits it as a string in ISO8601 format.

    Now I need timestamp from the output value using MomentJS.

    That's a different question, and wouldn't involve the output of the above because:

    1. You can't get a timestamp from the output string, you'd get it from a moment object. You could parse that string, but that would be silly since you already had a moment object earlier.

    2. Timestamps are UTC based, so time zone conversion is irrelevant. You'd get the same timestamp if you didn't convert at all.

    You can get a string with a timestamp using .format('X') or .format('x') depending on which precision you want. But it's much cleaner to just get the numerical timestamp using .valueOf() or .unix(), again depending on precision.

    0 讨论(0)
  • 2021-01-31 00:15

    To get the time from the date use the format method of momentjs

    var date = moment('2016-10-11 18:06:03').tz('Europe/Paris').format();
     
    
    console.log(date);
    console.log(moment(date).format("X"));
    console.log(moment(date).format("x")); // for milliseconds
    console.log(moment(date).format("HH:mm"));
    console.log(moment(date).format("hh:mm A"));
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.21/moment-timezone-with-data.min.js"></script>

    0 讨论(0)
  • 2021-01-31 00:23
    moment().format("X"); // lowercase 'x' for milliseconds
    

    var date = moment('2016-10-11 18:06:03').tz('Europe/Paris').format(),
        timestamp = moment(date).format("X");
    
    $('#div1').text(date);
    $('#timestamp').text(timestamp);
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.21/moment-timezone-with-data.min.js"></script>
    
    <div id="div1"></div>
    <div id="timestamp"></div>

    0 讨论(0)
  • 2021-01-31 00:31

    Just to expand on something mentioned earlier. These generate the results.

    // less precision
    moment().unix() === moment().format('X')  // uppercase X
    
    // more precision
    moment().valueOf() === moment().format('x')  // lowercase x
    

    Hope that sheds some light

    0 讨论(0)
提交回复
热议问题