试图在字符串连接中打印MMDDYY格式的日期,失败得很惨



我的代码有什么问题?

var myDate = new Date();
var myString = "" +
               ( (typeof myDate !== "undefined") && ((myDate.getUTCMonth() + 1) < 10) ? "0" : "" ) +
               ( typeof myDate !== "undefined" ? (myDate.getUTCMonth() + 1) + myDate.getUTCDate() + myDate.getUTCFullYear().toString().substr(2,2): "" );
return myString;

为什么我的代码返回5位数字符串,如"03116"?是因为日期是根据参考来分配的吗?

编辑:谢谢你的链接。但如果有人知道为什么我得到一个5位数的字符串而不是MMDDYY,那就真的很有帮助了。我们有很多基于这段代码的行,如果不进行连接,重写它会很痛苦。

EDIT2:还想知道代码有什么问题吗?是因为参考分配吗?

使用NSDateFormatterDate转换为String。例如

    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "MM dd yy"
    return dateFormatter
    let myDate = Date();
    let str = dateFormatter.string(from: myDate)

如果您合并了MMddyy,它将变得不可读,请提供一个空格

最新更新