日期格式化處理函式集

2021-10-23 11:00:15 字數 3062 閱讀 2860

ftimeformat(item.updatetime, 'y-m-d')
/**

* @author ***

*//**

* %s字串格式替換

*/function fstring(txt)

} return txt;

}/**

* 數字格式化

* data 數字,f 格式串

* 格式串示例:'000.00' 表示整數部分至少三位小數部分兩位, .前乙個0則不補0

* 必須指定小數點

*/function fnumber(data, f)

});return data;

} else

}/**

* 獲得本週的開始日期

*/function getweekstartdate()

var weekstartdate = new date(nowyear, nowmonth, nowday - nowdayofweek + 1);

return weekstartdate;

}/**

* 獲得上週的開始日期

*/function getlastweekstartdate()

var weekstartdate = new date(

nowyear,

nowmonth,

nowday - nowdayofweek - 7 + 1

);return weekstartdate;

}function detecttype(input)

function daystrofweek(d)

/** * 時間格式化

* stamp: 時間戳 or date or '2018-05-20 12:10' or '2018/05/20 12:10'

* f: 格式串,'smart' 'y-m-d hh:mm' 'd'(週幾) 的組合, smart模式自動識別當日資訊提示

*/function ftimeformat(stamp, f)

if (stamp < 10000000000)

try else if (

typeof stamp === 'number' ||

(typeof stamp === 'string' && /^\d$/.test(stamp))

) else /, '');

}dt = new date(/-/.test(stamp) ? stamp.replace(/-/g, '/') : stamp);

}if (dt.tojson())

// 昨天

refer.setdate(refer.getdate() - 1);

if (stamp >= refer.gettime())

if (weekly && stamp > getweekstartdate().gettime()) else if (weekly && stamp > getlastweekstartdate().gettime()) else else

}} else

// 明天

refer.setdate(refer.getdate() + 1);

if (stamp <= refer.gettime()) else else }}

// 更早

return 'y-m-d';

});}

return f

.replace(/hh/, fnumber(dt.gethours(), '00'))

.replace(/mm/, fnumber(dt.getminutes(), '00'))

.replace(/ss/, fnumber(dt.getseconds(), '00'))

.replace(/h/, dt.gethours())

.replace(/m/, dt.getminutes())

.replace(/s/, dt.getseconds())

.replace(/d/, daystrofweek(dt.getday())) // 週幾

.replace(/mm/, fnumber(dt.getmonth() + 1, '00'))

.replace(/dd/, fnumber(dt.getdate(), '00'))

.replace(

/y/,

dt.getfullyear()

.tostring()

.substring(2)

).replace(/y/, dt.getfullyear())

.replace(/m/, dt.getmonth() + 1)

.replace(/d/, dt.getdate());

} else

} catch (e)

}function parsedate(stamp) else if (

typeof stamp === 'number' ||

(typeof stamp === 'string' && /^\d$/.test(stamp))

) else if (stamp && /^\d\d\d$/.test(stamp)) )(\d)(\d)$/);

var rst = reg

.exec(stamp)

.slice(1)

.join('/');

return new date(rst);

} else /, '');

}dt = new date(/-/.test(stamp) ? stamp.replace(/-/g, '/') : stamp);

} return dt;

}// 獲得最接近的未來時間,半小時整點間隔

function getnearbyfeaturetime() else

date.setseconds(0);

date.setmilliseconds(0);

return date;

}function formatseconds(seconds)

export ;

Java日期時間格式化處理

date date new date string str string.format tc date 常用如下 te 乙個月中的某一天,如2 tb 指定言環境的月份簡稱,如feb 英文 二月 中文 tb 指定語言環境的月份全稱,如february 英文 二月 中文 ta 指定語言環境的星期全稱,如...

FLEX日期格式化處理和字串轉換

一 格式化處理 c sharp view plain copy print?var mydateformatter dateformatter new dateformatter mydateformatter.formatstring yyyy mm dd jj nn ss mydateforma...

時間格式化處理工具類

時間格式化 引數 time 時間 type 0 今天10 20 昨天10 20 2019.01.21 10 29 1 10 20 昨天10 20 2019.01.21 10 29 2 2019.01.21 10 29 3 2019.01.21 4 10 29 5 今天10 20 2019.01.21...