把时间戳转换成为任意你想要的格式!

 1         var dateFormat = (function() {
 2             var _map = {
 3                     i: !0,
 4                     r: /yyyy|yy|MM|cM|eM|M|dd|d|HH|H|mm|ms|ss|m|s|w|ct|et/g
 5                 },
 6                 _12cc = ['上午', '下午'],
 7                 _12ec = ['A.M.', 'P.M.'],
 8                 _week = ['日', '一', '二', '三', '四', '五', '六'],
 9                 _cmon = ['一', '二', '三', '四', '五', '六', '七', '八', '九', '十', '十一', '十二'],
10                 _emon = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec'];
11             var _fmtnmb = function(_number) {
12                 _number = parseInt(_number) || 0;
13                 return(_number < 10 ? '0' : '') + _number;
14             };
15             var _fmtclc = function(_hour) {
16                 return _hour < 12 ? 0 : 1;
17             };
18             return function(_time, _format, _12time) {
19                 if(!_time || !_format)
20                     return '';
21                 _time = new Date(_time);
22                 _map.yyyy = _time.getFullYear();
23                 _map.yy = ('' + _map.yyyy).substr(2);
24                 _map.M = _time.getMonth() + 1;
25                 _map.MM = _fmtnmb(_map.M);
26                 _map.eM = _emon[_map.M - 1];
27                 _map.cM = _cmon[_map.M - 1];
28                 _map.d = _time.getDate();
29                 _map.dd = _fmtnmb(_map.d);
30                 _map.H = _time.getHours();
31                 _map.HH = _fmtnmb(_map.H);
32                 _map.m = _time.getMinutes();
33                 _map.mm = _fmtnmb(_map.m);
34                 _map.s = _time.getSeconds();
35                 _map.ss = _fmtnmb(_map.s);
36                 _map.ms = _time.getMilliseconds();
37                 _map.w = _week[_time.getDay()];
38                 var _cc = _fmtclc(_map.H);
39                 _map.ct = _12cc[_cc];
40                 _map.et = _12ec[_cc];
41                 if(!!_12time) {
42                     _map.H = _map.H % 12;
43                 }
44                 return _$encode(_map, _format);
45             };
46         })();
47         var _$encode = function(_map, _content) {
48             _content = '' + _content;
49             if(!_map || !_content) {
50                 return _content || '';
51             }
52             return _content.replace(_map.r, function($1) {
53                 var _result = _map[!_map.i ? $1.toLowerCase() : $1];
54                 return _result != null ? _result : $1;
55             });
56         };
57         var time = new Date().getTime();
58         console.log(dateFormat(time, "yy-MM-dd cM eM ct et w HH:mm:ss"));

 这个函数不是本人写的,是在不经意间发现的,觉得写的不错,就像自己留下来。直接调用dateFormat()就行,第一个参数是你要转换的时间戳,第二个参数是个字符串,里面你想转换成什么样的,你就写成什么样的,至于每个字符代表什么意思,请参考22-40行代码!相信你们都能看懂……

原文地址:https://www.cnblogs.com/daniao11417/p/7511277.html