嗨,当我从一个看起来像的字符串构建日期时,我遇到了一些语法问题
我的代码:
paramCheckDate = "01/14/2022"
CheckDateYYYYMMDD = paramCheckDate.split["/"][2].toString() + paramCheckDate.split["/"][1].toString() + paramCheckDate.split["/"][0].toString()
我想构建另一个格式为YYYYMMDD的字符串。按索引和.toString进行拆分,但我有语法错误,如果我能得到一些指导,那就太棒了!
- 您有
['/']
而不是('/')
-String.prototype.split
是您必须调用的函数,而不是您必须索引的数组/对象 - 不需要
toString()
,字符串的部分已经是好的字符串了 - 您的示例显示,您希望将MM/DD/YYYY转换为YYYYMMDD,但是(假设您修复了#1(实际上您正在将其转换为YYYYDDMM。你必须使用第三个,然后是第一个,然后是第二个
- 如果不调用
split
3次,性能会更好(也更容易阅读(。相反,您可以将其拆分一次,然后加入:
const [m, d, y] = paramCheckDate.split('/')
const CheckDateYYYYMMDD = y + m + d
方括号用于数组访问,圆括号用于函数调用。
使用paramCheckDate.split("/")
您可以使用下面的正则表达式将源字符串替换为所需的格式
const CheckDateYYYYMMDD = paramCheckDate.replace(/(d+)/(d+)/(d+)/,"$3$1$2");