我用来执行此操作的当前代码就是这样,
x3 = new Date(x1.value).format('yyyymmdd');
这适用于Firefox,Chrome以及其他所有内容,但优秀的Internet Explorer除外。
我尝试了其他代码,例如......
<script>
function parseISO8601(dateStringInRange) {
var isoExp = /^\s*(\d{4})-(\d\d)-(\d\d)\s*$/,
date = new Date(NaN), month,
parts = isoExp.exec(dateStringInRange);
if(parts) {
month = +parts[2];
date.setFullYear(parts[1], month - 1, parts[3]);
if(month != date.getMonth() + 1) {
date.setTime(NaN);
}
}
alert(date);
return date;
}
parseISO8601('2013-01-21');
</script>
这适用于所有浏览器但是给我这样的输出.....
Mon Jan 21 2013 00:00:00 GMT+0000 (GMT Standard Time)
当我真的需要它看起来像这样
20130121
有没有人遇到过这个问题,想办法解决它?
答案 0 :(得分:1)
使用此处的函数在您从函数返回的日期之外构建一个新字符串。
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date
getDate(),getMonth()等应该是你要找的东西
示例:
var toConvert = parseISO8601('2013-01-21');
var newForm = toConvert.getYear().toString()+toConvert.getMonth().toString()+toConvert.getDate().toString();
然后,如果您需要整数形式的newForm,那么只需运行parseInt(newForm);