我见过这个:how to get formatted date time like 2009-05-29 21:55:57 using javascript?
但我确实需要在单个数字日期之前的0(我需要2011-04-01,而不是2011-4-1)
我不想为这个添加另一个不必要的插件,所以如果在js / jquery中有内置函数或SIMPLE函数可以做到这一点,我很好。我希望它不会导致10行函数,只是为了检查月份是否是单数,然后为它添加零。
基本上,我使用的是AnyTime js(http://www.ama3.com/anytime/)插件,但如果我的开始日期不是“yyyy-mm-dd”形式,则会抛出错误。我的起始默认值是“now”所以我试图将新的Date()转换为该格式。有什么帮助吗?
注意 请不要提供插件的链接,因为我希望有一个非常简单的解决方案。我发现使用插件来修复插件实际上并不是很干净。
答案 0 :(得分:3)
function getFormattedDate() {
var date = new Date();
var str = date.getFullYear() + "-" + getFormattedPartTime(date.getMonth()) + "-" + getFormattedPartTime(date.getDate()) + " " + getFormattedPartTime(date.getHours()) + ":" + getFormattedPartTime(date.getMinutes()) + ":" + getFormattedPartTime(date.getSeconds());
return str;
}
function getFormattedPartTime(partTime){
if (partTime<10)
return "0"+partTime;
return partTime;
}
答案 1 :(得分:3)
var getDate = (function() {
function addZ(n) {
return n<10? '0'+n : ''+n;
}
return function() {
var d = new Date();
return d.getFullYear()+'-'+addZ(d.getMonth()+1)+'-'+addZ(d.getDate());
}
}());
答案 2 :(得分:1)
Any + Time(TM)库包含一个名为AnyTime.Converter的对象,专门用于解析和格式化日期,因此您可以这样做:
(new AnyTime.Converter({format:"%Y-%M-%d"})).format(new Date());
但是,如果字段为空或与格式说明符不匹配,则库也默认为当前日期/时间,因此当您显示表单时,您真的可以将该字段留空!
如果有任何其他问题或疑问,您通常可以通过我网站上的链接直接与我联系。
答案 3 :(得分:0)
答案 4 :(得分:0)
我认为您正在寻找this
答案 5 :(得分:0)