js date 格式化
程序员文章站
2022-04-06 09:54:47
以这个为例: yyyy-mm-dd hh:mm:ss
首先得写好你需要的模板
options.sign = options.sign...
以这个为例: yyyy-mm-dd hh:mm:ss
首先得写好你需要的模板
options.sign = options.sign || 'yyyy-mm-dd hh:mm:ss';
其次就可以调用日期函数了(这里的月一定要+1,因为默认是从0开始的)
var d = new date(); var year = d.getfullyear(); var month = d.getmonth()+1; var day = d.getdate(); var hours = d.gethours(); var minutes = d.getminutes(); var second = d.getseconds();
然后把得到的日期与模板结合起来,就大功告成了,(这里用到了replace 把模板里的日期给替换掉)
var result = options.sign; result = result.replace('yyyy', year); result = result.replace('mm', month); result = result.replace('dd', day); result = result.replace('hh', hours); result = result.replace('mm', minutes); result = result.replace('ss', second); return result;
其实写完可以自己优化一下,自己好好想想,比如:2017-2-1 9:2:8 --> 2017-02-01 09:02:08 等。
这样自己可以写一个函数来过滤一下:这就用到一些小知识点,比如三目运算符,有时候会帮大忙,所以基础还是要打好的。
var _complete = function(n){ return (n>9) ? n : '0' + n; }
函数简单的封装好了。怎么用呢,看下面的代码,很简单,比如获取hours的时候。过滤一遍就好啦。
var hours = _complete(d.gethours());
下面附上全部代码:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>日期时间</title> </head> <body> </body> </html> <script type="text/javascript"> //yyyy-mm-dd var getdateformat = function(options){ options = options || {}; options.sign = options.sign || 'yyyy-mm-dd hh:mm:ss'; var _complete = function(n){ return (n>9) ? n : '0' + n; } var d = new date(); var year = d.getfullyear(); var month = _complete(d.getmonth()+1); var day = _complete(d.getdate()); var hours = _complete(d.gethours()); var minutes = _complete(d.getminutes()); var second = _complete(d.getseconds()); var result = options.sign; result = result.replace('yyyy', year); result = result.replace('mm', month); result = result.replace('dd', day); result = result.replace('hh', hours); result = result.replace('mm', minutes); result = result.replace('ss', second); return result; } console.log(getdateformat()); </script>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!