【发布时间】:2020-07-16 12:11:27
【问题描述】:
我正在编写一个 util 方法,它可以更改具有已知字段的对象中的日期格式。当我尝试动态生成字段时,它会抛出 undefined。
const dateFields = [
'booking_timestamp',
'box_timestamp',
'createdAt',
'updatedAt'
];
exports.convertToLondon = (arrayToProcess) => {
console.log(arrayToProcess.booking_timestamp); // 20170421 04:30:00
const processedArray = dateFields.map(field => {
console.log(arrayToProcess.field); // undefined
// const container = {};
const utcCutoff = moment.utc(arrayToProcess.field, 'YYYYMMDD HH:mm:ss');
// arrayToProcess.field => i would like to variable to dynamically populate for arrayToProcess.booking_timestamp
const displayCutoff = utcCutoff.clone().tz('Europe/London');
console.log('utcCutoff:', utcCutoff.format('YYYYMMDD HH:mm:ssa Z')); // => utcCutoff: 20170421 04:30:00pm +00:00
console.log('displayCutoff:', displayCutoff.format('YYYYMMDD HH:mm:ss:sssZ')); // => displayCutoff: 20170421 12:30:00pm -04:00
return null;
});
return processedArray;
};
【问题讨论】:
-
container是一个空对象,里面没有设置数据 -
更新了代码,我说的是console.log(arrayToProcess.field);这行
-
我试图帮助你,我认为我是对的,但我看到你被否决了,所以......祝你好运:) 尝试改进对问题的描述,这不清楚你是什么'重新要求。
标签: javascript node.js ecmascript-6 momentjs