JavaScript的:数字阵列以日期时间字符串格式

问题描述 投票:-2回答:3

我有编号的数组

var year = [1999,2000,2001,2002,2003];

我需要转换成datetime格式

var yearConvert =["1999-00-00","2000-00-00","2001-00-00","20002-00-00","2003-00-00"];

我只有一年是一个整数

javascript arrays date datetime
3个回答
0
投票

您可以使用map和CONCAT -00-00每个元素

var year = [1999,2000,2001,2002,2003];

let op = year.map(e => e+'-00-00')

console.log(op)

0
投票

你可以使用一个IIFE generator functionspread syntaxyield每个值到这样一个数组:

const year = [1999,2000,2001,2002,2003],
yearConvert = [...(function*(a){
  for(y of a) yield `${y}-00-00`;
})(year)];

console.log(yearConvert);

0
投票

您可以使用Array#map做到这一点。但返回的数组将有值的字符串不是Date对象。

const year = [1999,2000,2001,2002,2003];
const dateString = year.map((ele) => `${ele}-00-00`);
console.log(dateString);

//Convert this array to Date Objects using Date constructor Date(year, monthIndex, day) month starts from '0'

const date = dateString.map((str) => { 
  const data = str.split('-');
  return new Date(data[0], data[1], data[2]+1);
});

console.log(date)

//To verify parse to date strings

const dateParsed = date.map((date) => date.toDateString());
console.log(dateParsed);
© www.soinside.com 2019 - 2024. All rights reserved.