关于Js中时间戳转换成年月日格式问题

图片说明

前端:

        let i=res.data.length;//长度
        let j;
        let date=[];//接收时间戳$sevent_time
        var d=[];//用于接收初始化后的时间戳
        var dd=[];//用于接收转化为年月日格式的数组集
            for(j=0;j<i;j++){
                date[j]=res.data[j].$event_time;//遍历时间戳
                consul.log(date[j]);//打印出来是时间戳的格式
                d[j]=new Date(date[j]);//初始化时间戳
                consul.log(d);//打印出来的内容为Invalid Date。
                dd=d[j].getFullYear() + '-' + (d[j].getMonth() + 1) + '-' + d[j].getDate() + ' ' + d[j].getHours() + ':' + d[j].getMinutes() + ':' + d[j].getSeconds();
                }//返回的结果是NaN

请大佬帮我看一下,这种错误的原因

new Date()创建对象失败,自然无法调用对象的方法;
试试:
var myDate=new Date(1563603249217);
console.log(myDate)
你的数据是字符串类型,这里必须是数字类型才可以

声明数组不是这样声明的,声明数组的方法错了。https://blog.csdn.net/qq_39125445/article/details/88218907在这里可以学一下

function f_addZero(value){
    if(value < 10){
        return '0'+value;
    }
    return value;
}

var d=new Date(parseInt("1563603249217"));
var dd=d.getFullYear() + '-' + f_addZore((d.getMonth() + 1)) + '-' + f_addZore(d.getDate()) + ' ' + f_addZore(d.getHours()) + ':' + f_addZore(d.getMinutes()) + ':' + f_addZore(d.getSeconds());

console.log(dd)

let baseTime = 1523721600000

let time = moment(baseTime).format()

console.log(baseTime);
console.log(time);