function getDate(timestamp) {
var myDate = new Date(timestamp * 1000);
var month = myDate.getMonth() + 1; //获取当前月份(0-11,0代表1月)
return myDate.getFullYear() + '-' + month + '-' + myDate.getDate() + ' ' + myDate.getHours() + ':' + myDate.getMinutes() + ':' + myDate.getSeconds();
}
由于timestamp 是有后台经过接口传过来的,是长度为10的字符串类型,调佣函数时输出NaN-NaN-NaN NaN:NaN:NaN
我们调试代码查看
console(timestamp * 1000)
输出了一个16位:1616963886888000,而不是我们想要的13位数字1616963886000
解决办法,字符串转int, 可以Number,也可以parseInt
function getDate(timestamp) {
var myDate = new Date(Number(timestamp) * 1000);
var month = myDate.getMonth() + 1; //获取当前月份(0-11,0代表1月)
return myDate.getFullYear() + '-' + month + '-' + myDate.getDate() + ' ' + myDate.getHours() + ':' + myDate.getMinutes() + ':' + myDate.getSeconds();
}