| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- // 获取任意时间
- export const getDate = (date, AddDayCount = 0) => {
- if (!date) {
- date = new Date();
- }
- if (typeof date !== 'object') {
- date = date.replace(/-/g, '/');
- }
- const dd = new Date(date);
- dd.setDate(dd.getDate() + AddDayCount); // 获取AddDayCount天后的日期
- const y = dd.getFullYear();
- const m = dd.getMonth() + 1 < 10 ? '0' + (dd.getMonth() + 1) : dd.getMonth() + 1; // 获取当前月份的日期,不足10补0
- const d = dd.getDate() < 10 ? '0' + dd.getDate() : dd.getDate(); // 获取当前几号,不足10补0
- const dayStrList = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
- const HMS = `${dd.getHours() < 10 ? '0' + dd.getHours() : dd.getHours()}${dd.getMinutes() < 10 ? '0' + dd.getMinutes() : dd.getMinutes()}${
- dd.getSeconds() < 10 ? '0' + dd.getSeconds() : dd.getSeconds()
- }`;
- return {
- fullDate: y + '-' + m + '-' + d,
- year: y,
- month: m,
- date: d,
- day: dd.getDay(),
- dayStr: dayStrList[dd.getDay()],
- rStr: `${m}月${d}日`,
- HMS
- };
- };
- // 通用跳转方法
- export function go(url, mode = 'navigateTo') {
- if (url == -1) {
- let pages = getCurrentPages(); //获取页面
- let beforePage = pages[pages.length - 2]; //上个页面
- if (beforePage) {
- uni.navigateBack();
- } else {
- uni.reLaunch({
- url: '/pages/index/index'
- });
- }
- } else {
- uni[mode]({
- url
- });
- }
- }
- export function sToHs(s) {
- //计算分钟
- //算法:将秒数除以60,然后下舍入,既得到分钟数
- let h;
- h = Math.floor(s / 60);
- //计算秒
- //算法:取得秒%60的余数,既得到秒数
- s = s % 60;
- //将变量转换为字符串
- h += '';
- s += '';
- //如果只有一位数,前面增加一个0
- h = h.length === 1 ? '0' + h : h;
- s = Math.floor(s * 100) / 100;
- s = s.length === 1 ? '0' + s : s;
- if (parseInt(s) < 10) s = '0' + s;
- return '00:' + h + ':' + s;
- }
- // 将时间格式'00:00:00.00' 转成毫秒
- export function timeToMilliseconds(timeString) {
- // 拆分时间字符串
- const [hours, minutes, secondsWithMs] = timeString.split(':');
- const [seconds, milliseconds] = secondsWithMs.split('.');
- // 转换为秒数
- const totalMilliseconds =
- parseInt(hours) * 3600 * 1000 + // 小时转毫秒
- parseInt(minutes) * 60 * 1000 + // 分钟转毫秒
- parseFloat(`${seconds}.${milliseconds}`) * 1000; // 秒和毫秒转毫秒
- return totalMilliseconds;
- }
- // 将毫秒转长度
- export function getTrackLength(str) {
- const milliseconds = timeToMilliseconds(str);
- return Math.round(milliseconds / 12.5);
- }
- export default {
- getDate,
- go,
- sToHs,
- timeToMilliseconds,
- getTrackLength
- };
|