![](/img/trans.png)
[英]How to convert ISOString to date format dd/mm/yyyy using javascript
[英]how to change date format to isostring
我有 object 数组,我想将 date.[date 和 dateofbirth] 的日期格式更改为 iso 字符串。 我尝试使用 map 更改日期格式,但没有运气。 如何动态更改两个日期的日期格式?
//array of object
const emp = [
{ name: "John", age: 22, date: "2015-03-25", dateofbirth: "1990-03-25" },
{ name: "Peter", age: 20, date: "2015-04-23", dateofbirth: "1389-03-03" },
{ name: "Mark", age: 23, date: "2015-01-20", dateofbirth: "1970-11-03" }
];
//my code
let modifiedArr = emp.map(function (newDate) {
return newDate.date.toISOString;
});
console.log(modifiedArr);
请从 JS 中的map()
function 的文档中阅读并更好地理解 map map()
function 。
map()
function 遍历数组并对每个项目应用指定的回调。
接下来,您需要使用Date
构造函数构造Date
对象。 只有这样你才能调用toISOString()
方法。
//array of object
const emp = [
{ name: "John", age: 22, date: "2015-03-25", dateofbirth: "1990-03-25" },
{ name: "Peter", age: 20, date: "2015-04-23", dateofbirth: "1389-03-03" },
{ name: "Mark", age: 23, date: "2015-01-20", dateofbirth: "1970-11-03" },
];
//my code
let modifiedArr = emp.map(function (empRecord) {
return {
...empRecord,
date: new Date(empRecord.date).toISOString(),
dateofbirth: new Date(empRecord.dateofbirth).toISOString(),
};
});
console.log(modifiedArr);
但是,无论何时处理日期,我都强烈推荐luxon
。 仅仅因为香草 JS 日期 API 是无聊的。
const emp = [ {name: "John", age: 22, date: "2015-03-25", dateofbirth: "1990-03-25"}, {name: "Peter", age: 20, date: "2015-04-23", dateofbirth: "1389-03-03"}, {name: "Mark", age: 23, date: "2015-01-20", dateofbirth: "1970-11-03"} ]; let dateKeys = ['date', 'dateofbirth']; var getDateInISO = function(date) { return new Date(date).toISOString(); } let modifiedArr = emp.map(function (elem) { dateKeys.forEach(function(date) { elem[date] = getDateInISO(elem[date]); }) return elem; }); console.log(modifiedArr);
toISOString()是 javascript日期class 中的方法,而日期属性的值是字符串文字。 因此,您首先必须获取日期 class 的实例,然后调用 toISOString() function。
这可以通过以下方式完成,
let modifiedArr = emp.map(function (item) {
// This will create a Date object representing the given date
const currDate = new Date(item.date);
return currDate.toISOString;
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.