我有一个日期,它取自JS中的用户输入(react(。
我需要以cyymmdd格式发送它。如何转换?
像这个01/05/1998 to 980501
编辑
如何将其从cyymmdd更改为dd/mm/yyyy?
您可以通过/
拆分字符串来连接它,然后反转数组(吐出的值(的顺序,然后再次连接并剪切前两个字符:
'01/05/1998'.split('/').reverse().join('').slice(2) // "980501"
细分:
'01/05/1998'
.split('/') // ["01", "05", "1998"]
.reverse() // ["1998", "05", "01"]
.join('') // "19980501"
.slice(2) // "980501"
您可以使用momentjs来实现
moment("11/05/1998").format("YYMMDD");
尝试这个
convertDateFromDDMMYYYYToCYYMMDD('01/05/1998'); //returns desired '980501'
function convertDateFromDDMMYYYYToCYYMMDD(ddmmyyyyDate){
const testRegex = /^d{2}/d{2}/d{4}$/
if(!testRegex.test(ddmmyyyyDate))
throw new TypeError('date does not match DDMMYYYY format')
const dateParts = ddmmyyyyDate.split('/')
const cyy = Number(dateParts.pop()) - 1900
if(cyy<0)
throw new Error('date before year 1900')
return cyy+dateParts[1]+dateParts[0]
}
假设您想在将其保存到数据库中之前对其进行转换,我建议使用RegEx来更改格式。
看看这条线索,它有你正在寻找的答案。这是一个链接。
还有可能的重复。
最简单的方法是使用拆分
const date = "01/05/1998";
const [dd, mm, year] = date.split("/");
const yy = year.match(/dd$/)[0];
const result = `${yy}${mm}${dd}`;
console.log(result);