My goal is to convert a timestamp from MySQL into a JavaScript Date object in an efficient manner. Here is my current snippet that converts the MySQL timestamp into a formatted date in PHP:
<?php // formats timestamp into following format: 2009, 7, 30 $date = date("Y, n, j", strtotime($row["date"])); ?>
I am then using this $date
value for a chart using Google's charting API which requires JavaScript Date object:
data.setValue(<?=$count;?>, 0, new Date(<?=$date;?>));
The problem is that the JavaScript Date object begins the month index with 0 so the output is always 1 month in advance. What is the most efficient way in dealing with this issue?
Thanks in advance!
because they might have an array of string (indexed from 0) of month names and these month numbers if they start from 0, it'll be lot easier to map to the month strings.. Show activity on this post.
To get the first and last day of the current month, use the getFullYear() and getMonth() methods to get the current year and month and pass them to the Date() constructor to get an object representing the two dates. Copied! const now = new Date(); const firstDay = new Date(now. getFullYear(), now.
The getMonth() method returns the month in the specified date according to local time, as a zero-based value (where zero indicates the first month of the year).
const date = new Date('2022-02-21'); const dateCopy = new Date(date. getTime()); dateCopy. setDate(dateCopy. getDate() + 1); // 👇️ Tue Feb 22 2022 console.
You can feed the Date constructor a date in mm/dd/yyyy or yyyy/mm/dd format and it will convert it:
>>> new Date('7/30/2009'); Thu Jul 30 2009 00:00:00 GMT-0700 (Pacific Daylight Time) >>> new Date('2009/7/30'); Thu Jul 30 2009 00:00:00 GMT-0700 (Pacific Daylight Time)
You have to manually subtract that extra 1
from month number I'm afraid. JS Date object is a mess.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With