我想用 javascript 以我想输出的特定格式输出日期
2013-7-31 15:17:56
我该怎么做呢,我用谷歌搜索了一下,发现了类似的功能,
getYear()
&& getMonth()
_getDay()
但我似乎通过这些功能得到了这个输出
2013-6-3
我想用 javascript 以我想输出的特定格式输出日期
2013-7-31 15:17:56
我该怎么做呢,我用谷歌搜索了一下,发现了类似的功能,
getYear()
&& getMonth()
_getDay()
但我似乎通过这些功能得到了这个输出
2013-6-3
您可以使用一些方法来处理此Date 对象,如下所示:
创建原型函数
您可以创建一个非常基本的原型函数,它允许您使用每个组件显式构建一个字符串,如果您打算经常重用此函数或类似函数,这可能是一个很好的方法:
//Creating a Prototype
Date.prototype.yyyymmddhhmmss = function() {
//Grab each of your components
var yyyy = this.getFullYear().toString();
var MM = (this.getMonth()+1).toString();
var dd = this.getDate().toString();
var hh = this.getHours().toString();
var mm = this.getMinutes().toString();
var ss = this.getSeconds().toString();
//Returns your formatted result
return yyyy + '-' + (MM[1]?MM:"0"+MM[0]) + '-' + (dd[1]?dd:"0"+dd[0]) + ' ' + (hh[1]?hh:"0"+hh[0]) + ':' + (mm[1]?mm:"0"+mm[0]) + ':' + (ss[1]?ss:"0"+ss[0]);
};
//Usage
alert(new Date().yyyymmddhhmmss());
输出为 yyyy-mm-dd
与上面的示例非常相似,您可以使用 Date 对象的各个组件直接构建字符串:
//Create a Date object
var date = new Date();
//Concatenate the sections of your Date into a string ("yyyy-mm-dd")
var formatted = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate();
输出为 yyyy-mm-dd hh:mm:ss
此方法与上述方法相同,只是它还包括一些附加字段,例如小时、分钟和秒。
var date = new Date();
var formatted = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds();
首先,您需要处理0
基于月份的事实(即 0 = 1 月,1 = 2 月等)。为此,当您获得 3 个值时,您可以简单地增加月份值:
var year = x.getFullYear();
var month = x.getMonth() + 1;
var day = x.getDate();
注意:您需要getDate()
用于白天部分(例如31
)。getDay()
将在工作日返回您(例如3
= 星期三)
其次,您需要处理个位数显示。为此,您可以检查该值是否小于10
,如果是,则用“0”填充它。一个小助手功能可以为您做到这一点:
function pad(x){
if(x < 10) return "0" + x;
return x;
}
您最终可以像这样使用它:
var myDate = year + "-" + pad(month) + "-" + pad(day);
当然,正如其他人所说,使用库会容易得多!
这是一个对我有用的简单方法。它可以扩展到所有日期参数。
var mm = currentDay.getMonth()+1;
mm = (mm<10?"0"+mm:mm);
var dd = currentDay.getDate();
dd = (dd<10?"0"+dd:dd);
$log.info(mm+"/"+dd);
我知道 OP 询问了 Javascript,但从丑陋(尽管正确)的答案来看,指定 Javascript 是错误的问题。
HTML 没有打印当前日期和时间的方法,但它应该有。应该有人发明一个。
但是 PHP 是做想要的事情的方法:
<?php print date("j M Y H:i"); ?>
PHP 有 38 种不同的格式符号,涵盖各种需求,请参阅https://www.php.net/manual/en/function.date.php