import $store from '@/store' import $tools from '@/toolJs/tools.js' export default { msg, toHex, gethms, str2hex, hex2str, ab2hex, inArray, getMonth, getDate, GetDateStr, PrefixZero, showModal, compareVersions, validatePhoneEmail } function showModal(text) { uni.showModal({ title: "提示", content: text, showCancel: false, success: function(res) { if (res.confirm) {} } }) } // 版本对比 function compareVersions(version1, version2) { console.log("版本对比", version1, version2) // 将版本号拆分成数字数组 var arr1 = version1.split('.').map(Number);; var arr2 = version2.split('.').map(Number);; // 遍历数字数组进行逐段比较 for (var i = 0; i < Math.max(arr1.length, arr2.length); i++) { var num1 = parseInt(arr1[i] || 0); // 如果数组长度不够,则将缺失部分补0 var num2 = parseInt(arr2[i] || 0); if (num1 < num2) { return -1; // 版本1小于版本2 } else if (num1 > num2) { return 1; // 版本1大于版本2 } } return 0; // 版本1等于版本2 } // 2进制位数不足补0 function PrefixZero(num, n) { return (Array(n).join(0) + num).slice(-n); } //转16进制位数不足补0 function toHex(num, length) { return num.toString(16).padStart(length, '0'); } function inArray(arr, key, val) { if (!arr || !arr.length || typeof arr != 'object' || !Array.isArray(arr)) { return -1 } for (let i = 0; i < arr.length; i++) { if (!key) { if (arr[i] == val) { return i } } else if (arr[i][key] === val) { return i } } return -1; } function validatePhoneEmail(input) { const phoneRegex = /^(\+?\d{1,4})?[-\s.]?\(?(\d{3})\)?[-\s.]?(\d{3})[-\s.]?(\d{4})$/; const emailRegex = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; const isPhone = phoneRegex.test(input); const isEmail = emailRegex.test(input); return { isPhone, isEmail }; } function msg(str) { uni.showToast({ title: str, icon: 'none', duration: 3000 }) } function ab2hex(buffer, split) { var hexArr = Array.prototype.map.call( new Uint8Array(buffer), function(bit) { return ('00' + bit.toString(16)).slice(-2) } ) return hexArr.join(split); } function hex2str(arr) { let decoder = new TextDecoder('utf8') let uint8 = new Uint8Array(arr) let res = decoder.decode(uint8) return res } function str2hex(str) { let encoder = new TextEncoder('utf8') return encoder.encode(str) } // 跳绳分秒时间选择 function gethms(type) { var mindata = [] var secondData = [] let timeList = [] for (var i = 0; i <= 59; i++) { i = i > 9 ? i : '0' + i mindata.push(i + '分'); } for (var i = 0; i <= 59; i++) { i = i > 9 ? i : '0' + i secondData.push(i + '秒'); } timeList[0] = mindata timeList[1] = secondData return timeList } function getMonth(dates, months) { var d = new Date(dates.substring(0, 10)); let year = d.getFullYear(); var month = d.getMonth() + 1; if (Math.abs(months) > 12) { months = months % 12; }; if (months != 0) { if (month + months > 12) { year++; month = (month + months) % 12; } else if (month + months < 1) { year--; month = 12 + month + months; } else { month = month + months; }; }; month = month < 10 ? "0" + month : month; var date = d.getDate(); if (month == "01" || month == "03" || month == "05" || month == "07" || month == "08" || month == "10" || month == "12") { return year + "-" + month + "-01" + "~" + year + "-" + month + "-31"; } else if (month == "02") { if ((year % 4 == 0 && year % 100 != 0) || (year % 100 == 0 && year % 400 == 0)) { return year + '-' + month + "-01" + "~" + year + "-" + month + "-29"; } else { return year + '-' + month + "-01" + "~" + year + "-" + month + "-28"; }; } else { return year + '-' + month + "-01" + "~" + year + "-" + month + "-30"; }; }; function getDate(type) { const date = new Date(); let year = date.getFullYear(); let month = date.getMonth() + 1; let day = date.getDate(); month = month > 9 ? month : '0' + month; day = day > 9 ? day : '0' + day; if (type === 'tow') { year = year - 2; return `${year}-${month}-${day}`; } if (type === 'start') { year = year; return `${year}-${month}-${day}`; } if (type === 'end') { year = year + 60; return `${year}-${month}-${day}`; } if (type === 'year') { year = year; return `${year}`; } if (type === 'month') { year = year; return `${year}-${month}`; } if (type == "m") { if (month == "01" || month == "03" || month == "05" || month == "07" || month == "08" || month == "10" || month == "12") { return year + "-" + month + "-01" + "~" + year + "-" + month + "-31"; } else if (month == "02") { if ((year % 4 == 0 && year % 100 != 0) || (year % 100 == 0 && year % 400 == 0)) { return year + "-" + month + "-01" + "~" + year + "-" + month + "-29"; } else { return year + "-" + month + "-01" + "~" + year + "-" + month + "-28"; }; } else { return year + "-" + month + "-01" + "~" + year + "-" + month + "-30"; }; } } //获取AddDayCount天后的日期 function GetDateStr(AddDayCount) { var dd = new Date(); dd.setDate(dd.getDate() + AddDayCount); var y = dd.getFullYear(); var m = (dd.getMonth() + 1) < 10 ? "0" + (dd.getMonth() + 1) : (dd.getMonth() + 1); //获取当前月份的日期,不足10补0 var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate(); //获取当前几号,不足10补0 return y + "-" + m + "-" + d; }