有谁知道如何将JS dateTime转换为MySQL datetime?还有一种方法可以向JS日期时间添加特定的分钟数,然后将其传递给MySQL日期时间?
尽管JS确实拥有足够的基本工具来执行此操作,但它相当笨拙。
/**
* You first need to create a formatting function to pad numbers to two digits…
**/
function twoDigits(d) {
if(0 <= d && d < 10) return "0" + d.toString();
if(-10 < d && d < 0) return "-0" + (-1*d).toString();
return d.toString();
}
/**
* …and then create the method to output the date string as desired.
* Some people hate using prototypes this way, but if you are going
* to apply this to more than one Date object, having it as a prototype
* makes sense.
**/
Date.prototype.toMysqlFormat = function() {
return this.getUTCFullYear() + "-" + twoDigits(1 + this.getUTCMonth()) + "-" + twoDigits(this.getUTCDate()) + " " + twoDigits(this.getUTCHours()) + ":" + twoDigits(this.getUTCMinutes()) + ":" + twoDigits(this.getUTCSeconds());
};
如何用变量调用这样的函数?
@Catfish您的意思是指定日期?您使用一个
Date
对象。new Date().toMysqlFormat()
或new Date(2014,12,14).toMysqlFormat()
或什么的。这个答案源于JavaScript古老而笨拙的时代。如果您针对的是现代浏览器,则建议使用Gajus的
toISOString
方法。