2016-12-13 59 views
0

我在JavaScript中转换日期变量为特定的格式在JavaScript

var yest_date = "Mon Dec 12 2016 15:33:41 GMT-0800 (Pacific Standard Time)" 

我想这个变量“yest_date”要在这个格式此yest_date变量和值。

20161212 

有人可以让我知道如何做到这一点。

+0

你有一个字符串,只需重新格式化它。 – RobG

回答

1

只需将您的字符串转换为实际的日期,然后使用日期getter方法所需的值提取到一个格式化字符串:

let yest_date = "Mon Dec 12 2016 15:33:41 GMT-0800 (Pacific Standard Time)" 
 
let date = new Date(yest_date); 
 
console.log(`${date.getFullYear()}${date.getMonth() + 1}${date.getDate()}`)

+0

Hamms-wat是console.log内的代码?它的神秘。你可以解释那里的$符号 –

+0

它只是一个[模板文字](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) – Hamms

+0

我越来越无效的字符,当我请使用console.log –

1

你可以做到以下几点:

const date = new Date('Mon Dec 12 2016 15:33:41 GMT-0800 (Pacific Standard Time)') 
 

 
const day = date.getDate(); 
 
const month = date.getMonth() + 1; 
 
const year = date.getFullYear(); 
 

 
const formattedDate = `${year}${month}${day}`; 
 

 
console.log(formattedDate);

2

我会建议使用moment.js。这是一个非常好的图书馆办理相关的任何日期时间问题http://momentjs.com/

var yest_date = moment("Mon Dec 12 2016 15:33:41 GMT-0800 (Pacific Standard Time)") 
console.log(yest_date.format("YYYYMMDD")) 

如果你不想增加额外的库,然后你可以用经典的字符串连接

let yest_date = new Date("Mon Dec 12 2016 15:33:41 GMT-0800 (Pacific Standard Time)") 
console.log(`${yest_date.getFullYear()}${yest_date.getMonth() + 1}${yest_date.getDate()}`) 
+0

我收到错误当我使用此--->'$ {yest_date.getFullYear()} $ {yest_date.getMonth()+ 1} $ {yest_date.getDate()}' –

+0

什么是版本和类型是你的浏览器?你能提供代码和完整的错误日志吗?它适用于我的Chrome。它的工作原理是 –

+0

。谢谢 –