警报(dateObj)给出周三2009年12月30日00:00:00 GMT+0800

如何获得日期格式为2009/12/30?


当前回答

一行,使用解构。

创建3个字符串类型的变量:

const [year, month, day] = (new Date()).toISOString().substr(0, 10).split('-')

生成3个类型为number (integer)的变量:

const [year, month, day] = (new Date()).toISOString().substr(0, 10).split('-').map(x => parseInt(x, 10))

从那时起,你就可以很容易地以任何你喜欢的方式组合它们:

const [year, month, day] = (new Date()).toISOString().substr(0, 10).split('-');
const dateFormatted = `${year}/${month}/${day}`;

其他回答

var dateObj = new Date();
var month = dateObj.getUTCMonth() + 1; //months from 1-12
var day = dateObj.getUTCDate();
var year = dateObj.getUTCFullYear();

newdate = year + "/" + month + "/" + day;

或者你可以设置新的日期并给出上面的值

ES2018引入了正则表达式捕获组,你可以用它来捕获日、月和年:

const REGEX = /(?<year>[0-9]{4})-(?<month>[0-9]{2})-(?<day>[0-9]{2})/;
const results = REGEX.exec('2018-07-12');
console.log(results.groups.year);
console.log(results.groups.month);
console.log(results.groups.day);

这种方法的优点是可以捕获非标准字符串日期格式的日、月、年。

引用https://www.freecodecamp.org/news/es9——javascripts -状态- -艺术-在- 2018 - 9 - a350643f29c/

let dateObj = new Date();

let myDate = (dateObj.getUTCFullYear()) + "/" + (dateObj.getMonth() + 1)+ "/" + (dateObj.getUTCDate());

作为参考,你可以看到下面的细节

new Date().getDate()          // Return the day as a number (1-31)
new Date().getDay()           // Return the weekday as a number (0-6)
new Date().getFullYear()      // Return the four digit year (yyyy)
new Date().getHours()         // Return the hour (0-23)
new Date().getMilliseconds()  // Return the milliseconds (0-999)
new Date().getMinutes()       // Return the minutes (0-59)
new Date().getMonth()         // Return the month (0-11)
new Date().getSeconds()       // Return the seconds (0-59)
new Date().getTime()          // Return the time (milliseconds since January 1, 1970)

let dateObj = new Date(); let myDate = (dateObj.getUTCFullYear()) + “/” + (dateObj.getMonth() + 1)+ “/” + (dateObj.getUTCDate()); console.log(myDate)

一行,使用解构。

创建3个字符串类型的变量:

const [year, month, day] = (new Date()).toISOString().substr(0, 10).split('-')

生成3个类型为number (integer)的变量:

const [year, month, day] = (new Date()).toISOString().substr(0, 10).split('-').map(x => parseInt(x, 10))

从那时起,你就可以很容易地以任何你喜欢的方式组合它们:

const [year, month, day] = (new Date()).toISOString().substr(0, 10).split('-');
const dateFormatted = `${year}/${month}/${day}`;
var dt = new Date();

dt.getFullYear() + "/" + (dt.getMonth() + 1) + "/" + dt.getDate();

因为月份索引是以0为基础的,所以必须加1。

Edit

有关日期对象函数的完整列表,请参见

Date

getMonth()

根据当地时间返回指定日期中的月份(0-11)。

getUTCMonth()

根据世界时返回指定日期中的月份(0-11)。