我创建了这个jQuery,它以格式返回日期:YYYY-MM-DD
这是我的代码:
var d = new Date();
var day = d.getDate();
day = day.length > 1 ? day : '0' + day;
var month = d.getMonth() + 1;
month = month.length > 1 ? month : '0' + month;
var year = d.getFullYear();
var date = (year+"-"+month+"-"+day);
问题在于变量“天”:它用来返回我的日期号码,例如如果每月的日期是“9”,它应该还给我09(2015-01-09);如果每月的日期是“12”,则应该返回12(2015-01-12)。但是我的代码在“12”日的例子中给我回复:2015-01-012 - 它放零,但它没有,我不知道为什么把这个归零......
这里是jsfiddle:http://jsfiddle.net/b6afckx5/
真的感谢您的帮助
答案 0 :(得分:1)
day
是一个数字,而不是字符串,它没有length
属性,因此day.length
未定义。您需要先将其转换为字符串:
var day = d.getDate().toString();
同样的月份:
var month = (d.getMonth() + 1).toString();
答案 1 :(得分:1)
day是它没有长度属性的数字。 您应该检查它是否小于10以前置0。
day = day < 10 ? '0' + day : day
答案 2 :(得分:1)
var day = d.getDate();
day = (day >= 10)? day : '0' + day;
<强> JS Fiddle 强>
答案 3 :(得分:1)
长度不接受。你的代码可以是这样的:
var d = new Date();
var day = d.getDate();
day = day >9 ? day: '0' + day ;
var month = d.getMonth() + 1;
month = month < 10 ? '0' + month : month;
var year = d.getFullYear();
var date = (year+"-"+month+"-"+day);
$(function(){
$('#date').append(date);
});