新增 `util.toDateString` meridiem 格式支持

pull/1314/head
sight 2023-08-06 22:26:34 +08:00
parent 754c517c18
commit 36f70d74f9
2 changed files with 20 additions and 2 deletions

View File

@ -100,7 +100,7 @@ var result = util.timeAgo(1672531200000); // 2023-01-01 00:00:00
`var result = util.toDateString(time, format);` `var result = util.toDateString(time, format);`
- 参数 `time` : 毫秒数或日期对象 - 参数 `time` : 毫秒数或日期对象
- 参数 `format` : 日期字符格式。默认格式:`yyyy-MM-dd HH:mm:ss` 。可自定义,如: `yyyy年MM月dd日` - 参数 `format` : 日期字符格式。默认格式:`yyyy-MM-dd HH:mm:ss` 。可自定义,如: `yyyy年MM月dd日`
``` ```
var result = util.toDateString(1672531200000, 'yyyy-MM-dd'); // 2023-01-01 var result = util.toDateString(1672531200000, 'yyyy-MM-dd'); // 2023-01-01
@ -123,6 +123,7 @@ var result2 = util.toDateString(new Date('2023-01-01 11:35:25'), 'ss[s]'); // 25
| HH | 00-23 | 小时,两位数 | | HH | 00-23 | 小时,两位数 |
| h <sup>2.8.13+</sup> | 1-12 | 小时12 小时制 | | h <sup>2.8.13+</sup> | 1-12 | 小时12 小时制 |
| hh <sup>2.8.13+</sup> | 01-12 | 小时12 小时制,两位数 | | hh <sup>2.8.13+</sup> | 01-12 | 小时12 小时制,两位数 |
| A <sup>2.8.13+</sup> | 凌晨/早上/上午/中午/下午/晚上 | 时段 |
| m <sup>2.8.13+</sup> | 0-59 | 分钟 | | m <sup>2.8.13+</sup> | 0-59 | 分钟 |
| mm | 00-59 | 分钟,两位数 | | mm | 00-59 | 分钟,两位数 |
| s <sup>2.8.13+</sup> | 0-59 | 秒 | | s <sup>2.8.13+</sup> | 0-59 | 秒 |

View File

@ -260,7 +260,7 @@ layui.define('jquery', function(exports){
// 引用自 dayjs // 引用自 dayjs
// https://github.com/iamkun/dayjs/blob/v1.11.9/src/constant.js#L30 // https://github.com/iamkun/dayjs/blob/v1.11.9/src/constant.js#L30
var REGEX_FORMAT = /\[([^\]]+)]|y{1,4}|M{1,2}|d{1,2}|H{1,2}|h{1,2}|m{1,2}|s{1,2}|SSS/g; var REGEX_FORMAT = /\[([^\]]+)]|y{1,4}|M{1,2}|d{1,2}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|SSS/g;
var that = this; var that = this;
var date = new Date(function(){ var date = new Date(function(){
if(!time) return; if(!time) return;
@ -277,6 +277,22 @@ layui.define('jquery', function(exports){
var seconds = date.getSeconds(); var seconds = date.getSeconds();
var milliseconds = date.getMilliseconds(); var milliseconds = date.getMilliseconds();
var meridiem = function(hour, minute){
var hm = hour * 100 + minute;
if (hm < 600) {
return '凌晨';
} else if (hm < 900) {
return '早上';
} else if (hm < 1100) {
return '上午';
} else if (hm < 1300) {
return '中午';
} else if (hm < 1800) {
return '下午';
}
return '晚上';
};
var matches = { var matches = {
yy: function(){return String(years).slice(-2);}, yy: function(){return String(years).slice(-2);},
yyyy: function(){return that.digit(years, 4);}, yyyy: function(){return that.digit(years, 4);},
@ -288,6 +304,7 @@ layui.define('jquery', function(exports){
HH: function(){return that.digit(hours);}, HH: function(){return that.digit(hours);},
h: function(){return String(hours % 12 || 12);}, h: function(){return String(hours % 12 || 12);},
hh: function(){return that.digit(hours % 12 || 12);}, hh: function(){return that.digit(hours % 12 || 12);},
A: function(){return meridiem(hours, minutes);},
m: function(){return String(minutes);}, m: function(){return String(minutes);},
mm: function(){return that.digit(minutes);}, mm: function(){return that.digit(minutes);},
s: function(){return String(seconds);}, s: function(){return String(seconds);},