gpt4 book ai didi

node.js - 分配回对象时日期格式未更新 (YYYYMMDD)

转载 作者:行者123 更新时间:2023-12-03 22:38:25 26 4
gpt4 key购买 nike

我想要一个简单的 YYYYMMDD 格式,以便可以在有角度的前端显示它。

在这里,在对日期对象进行操作之后,我想将其分配回 TIMESTAMP结果对象中的列。 TIMESTAMP在数据库 (postgres) 中设置为 Date 对象。 TIMESTAMP 列仍保留 -分配时的分隔符newDatex .

我什至尝试过使用 momentjs 但无济于事。

我调查了this但这无助于解决我的问题。我不希望在数据库中更新格式。我需要更新它,以便我可以发送更新的格式 (YYYYMMDD)到我的前端。

app.get('/api/:date', (req, res) => {
var date = req.params.date;

Model.findAll({
where: {
TIMESTAMP: {
[Op.eq]: date
}
},
order: [
['SYMBOL', 'ASC']
]
}).then( result => {

if (result != undefined){

let i = 0;


let year = new Date(result[i].TIMESTAMP)


for (i = 0; i < result.length; i++) {
if(result[i].TIMESTAMP != undefined){
let date = year.getDate().toString()
let month = (year.getMonth() + 1).toString()
let newyear = year.getFullYear().toString();
(date.length == 1) && ( date = '0' + date);
(month.length == 1) && (month = '0' + month);

let newDatex = new String();
newDatex = newyear + month + date;
console.log('modified date:', newDatex)
moment(result[i].TIMESTAMP).format("YYYYMMDD");

result[i].TIMESTAMP = new String();
result[i].TIMESTAMP = newDatex;

console.log('should be removing "-" but isn\'t: ',result[i].TIMESTAMP)
}
}
res.json(result)

}
})

});

最佳答案

我以任何方式将日期输入到新的 Date() 构造函数中,并像这样格式化

var d = new Date('05 October 2011 14:48 UTC');
var day = d.getUTCDate();
var month = d.getUTCMonth() + 1;
var year = d.getFullYear();

// Check day for length to format
if (day.length < 2) {day = '0' + day};
console.log(`${year}${month}${day}`);

然后得到了这个:

enter image description here

也希望你没有在你引用的帖子中得到答案,那个人正在修改一个内置对象的原型(prototype)链,它是一个 巨大的不,不。

让我知道这是否适合您。

此外,如果 Postgres 中的数据类型是“日期”而不是 varchar,它可能会在您存储记录时自动为您格式化。因此,每次拉取数据时,您可能都必须更改数据类型或重新格式化数据。

关于node.js - 分配回对象时日期格式未更新 (YYYYMMDD),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54747123/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com