[英]JavaScript: Array of numbers to date-time string format
I have an array of number我有一个数字数组
var year = [1999,2000,2001,2002,2003];
and I need to convert to date-time formar我需要转换为日期时间形式
var yearConvert =["1999-00-00","2000-00-00","2001-00-00","20002-00-00","2003-00-00"];
I only have year which is an integer我只有整数年
You can use Array#map
to do it.您可以使用
Array#map
来做到这一点。 But the returned array will have the values as string not as Date
object.但是返回的数组的值将作为字符串而不是
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);
You could use a IIFE generator function with the spread syntax and yield
each value into an array like so:你可以使用一个IIFE 发生器功能与传播语法和
yield
每个值到这样一个数组:
const year = [1999,2000,2001,2002,2003], yearConvert = [...(function*(a){ for(y of a) yield `${y}-00-00`; })(year)]; console.log(yearConvert);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.