我在我正在处理的函数中使用moment.js
来转换日期类型,例如quarter
,month
,half
。
考虑到约会,我需要确定它是在H1还是H2(上半年或下半年)。
<input type="button" class="test" data-date="12/30/2016" data-type="day" value="Day">
<input type="button" class="test" data-date="04/30/2016" data-type="quarter" value="Quarter">
<input type="button" class="test" data-date="03/31/2016" data-type="half" value="Half">
<input type="button" class="test" data-date="07/25/2016" data-type="month" value="Month">
-
// On click of a button
$('.test').click(function(){
var result = convertDate($(this).data('date'), $(this).data('type'));
$('.result').empty().append(result)
})
// Given a date and type, return the conversion
function convertDate(date, type){
var output = '';
switch(type){
case 'day':
output = date;
break;
case 'quarter':
output = 'Q' + moment(date).quarter() + ' ' + moment(date).format('YYYY');
break;
case 'half':
// Not sure how to get this
break;
case 'month':
output = moment(date).format('MMMM YYYY');
break;
}
return output;
}
这是一个小提琴:https://jsfiddle.net/rmxydLuv/2/
如果您有关于改进功能的任何提示,我也会感激。
答案 0 :(得分:3)
您可以根据季度计算H1
或H2
。
case 'half':
output = moment(date).quarter() <= 2 ? "H1" : "H2" + ' ' + moment(date).format('YYYY');
break;