Javascript format special time - javascript

I have from a software a output like this timevalue:
15606260000 s
I don't know what format this is. The value in minutes is approximately 30 minute
How can I convert this with javascript in hour:min:seconds?
I think this is a epoch time or so?

this looks like a unix timestamp value (count in seconds since 01/01/1970)
what you can do in javascript is:
let d = new Date(15606260000); console.log(d.getUTCHours() + ":"+ d.getUTCMinutes() +":"+ d.getUTCSeconds());
and you can take it from there
You can use this link for a proper documentation
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
keep in mind that JS time is in milliseconds most of the times you need to multiply by 1000

Related

Format amount of seconds to minutes and seconds with momentjs

I'd like to use momentjs to use a given amount of seconds (e.g. 65) and format that to minutes and seconds (so in the case of 65 seconds it should format it to '01:05'). I've looked around the momentjs docs and also here but I couldn't quite get to the right solution. I know there's a way to do this with just pure JavaScript, but I'd like to use momentjs for this.
Any suggestions?
If you insist on doing this using moment.js, you can do something like this:
Start with a 00:00:00.000 time and add seconds, minutes, etc. to it.
Here is an example:
const result = moment("00:00:00.000", "hh:mm:ss.SSS").add(65, "s").format("mm:ss");
console.log(result);
<script src="https://cdn.jsdelivr.net/momentjs/2.14.1/moment-with-locales.min.js"></script>
The problem is that since this is the time of a date, when you add 24 hours to it, you'll end up with 00:00:00 instead of 24:00:00.

How to work with Moment.js to return time in a 24-hours format when adding to it?

I get hours as strings in my app, e.g. "2230". I would like to be able to add minutes to it, so as to simulate the time that it will be after those minutes have been added to it, e.g.
//"2230" + "60"mins = "23:30"
//"2230" + "180"mins = "02:30"
I read that Moment.js could be a solution to this, but I couldn't figure out:
what the right way to format the hours initially is with moment("2230").format()
how to add minutes to it
how to make it behave like a 24-hour clock when adding to it
Moment is a great tool for doing this. It takes some syntax tricks to get it right, but I think this is what you're looking for:
moment("2230", "HH:mm")
.add(60, "minutes")
.format("HH:mm")
Feel free to play around with it here:
https://codesandbox.io/s/proud-pine-lz0fs?file=/src/index.js
As you can see, as long as your time string is always 4 characters long, moment can extract the HH:mm format, then you can add minutes, and then format the final output to HH:mm again.
Here are 2 great resources:
https://techstream.org/Bits/Javascript/Javascript-Parse-time
https://flaviocopes.com/momentjs/
Hope that helps!
First you have to split this string to get the hours and minutes from it.
const s= "2230"
const hour = s.substring(0,2);
const min = s.substring(2,4);
After that you can easily pass this hours and min to a moment.
const time = moment()
.set({"hour": hour, "minute": min})
.add(60, 'minutes')
.format("HH:mm");
the .set is to set the time (hours minutes)
the .add is to add the minutes you wanted to add
the .format is to format the output as you pleased,
NOTE the capital "HH" means 24/h clock while "hh" means 12/h clock

Subtract time in 24 hour format using javascript or jquery

I have a start and end time in the format of HH:MM and I need to get the total time in hours. I have tried a couple methods like trimming the string to an hour and minutes then multiplying the hours by 60 and adding the minutes but since the minute string is two digits, 00 I get an answer that is a power of ten greater than what I need. I also feel like this approach is inefficient.
So what is the best way to subtract 04:30 and 22:00? I also have access to moment.js if that is helpful.
Using moment.js' difference
var a = moment('22:00', 'HH:mm');
var b = moment('04:30', 'HH:mm');
a.diff(b, 'hours', true)

get time different (minutes) in javascript

How do I calculate the difference in minutes given two strings. For example say I have
11:00
11:30
But of course the second string could be 12:11 so I can't subtract just the minutes.
first use javascript to convert the strings to time, then subtract, then convert back to strings
like this:
x = new Date("1/1/01 11:00")
y = new Date("1/1/01 11:30")
// now y-x has difference in milliseconds
// (y-x)/1000 is difference in seconds, etc
The data 1/1/01 is just being used as a dummy value, but the one thing you might have to worry about is are the times on different days, if so you will have to use 1/2/01 for the second time. Unless of course you always know the times are in the same day, but if they can cross "midnight" then you have to adjust for that.
You may want to use http://momentjs.com/ which will take care of the details for you.
When looking for getting metrics such as date , hour , minutes, seconds from the date difference, it's a lot easier to use basic notations as listed here
var x = new Date(new Date().getTime() + 11.5*60*60000); // adds 11 hours - 30 minutes
var y = new Date(new Date().getTime() + 11*60*60000); // adds 11 hours
alert(x.getMinutes() - y.getMinutes()); // gives the difference = 30
Here's an example : https://jsfiddle.net/DinoMyte/157knmgn/

How to compare MySQL timestamp

I am pulling a row from a mysql database which has a time stamp, like this: 2010-10-10 16:56:23
I need to compare this time stamp to the current time from the date object, and see if 30 minutes has passed.
thanks!
How about:
(new Date() - Date.parse('2010-10-10 16:56:23')) >= 1000 * 60 * 30 // (current date - date) >= 30 minutes
I'm not sure about the whole time zone thing though.. if the timezones between the server and user are different you may need to mess around with that.
2010-10-10 16:56:23
make it 20101010165623
get current time also in this format
Just compare bot as integer itself.
You got it!.
Or
mysql have datediff() function which will help you.
http://www.w3schools.com/SQl/func_datediff_mysql.asp
in the example , your case second paramtere will be now()
Use DATE_ADD function and cast date type to your string
NOW() > DATE_ADD(CAST('2010-10-10 16:56:23' AS date), INTERVAL 30 MINUTE)
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-add
http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html#function_cast

Categories

Resources