12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- /**
- * @description 将数字转换为中文简写数字
- * @param {Object} num
- */
- export function changeNumToHan(num) {
- var arr1 = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']
- var arr2 = ['', '十', '百', '千', '万', '十', '百', '千', '亿', '十', '百', '千', '万', '十', '百', '千', '亿']
- if (!num || isNaN(num)) return '零'
- var english = num.toString().split('')
- var result = ''
- for (var i = 0; i < english.length; i++) {
- var des_i = english.length - 1 - i // 倒序排列设值
- result = arr2[i] + result
- var arr1_index = english[des_i]
- result = arr1[arr1_index] + result
- }
- result = result.replace(/零(千|百|十)/g, '零').replace(/十零/g, '十') // 将【零千、零百】换成【零】 【十零】换成【十】
- result = result.replace(/零+/g, '零') // 合并中间多个零为一个零
- result = result.replace(/零亿/g, '亿').replace(/零万/g, '万') // 将【零亿】换成【亿】【零万】换成【万】
- result = result.replace(/亿万/g, '亿') // 将【亿万】换成【亿】
- result = result.replace(/零+$/, '') // 移除末尾的零
- // 将【一十】换成【十】
- result = result.replace(/^一十/g, '十')
- return result
- }
- /**
- * @description 将数字转换为小写字母
- * @param {Object} num
- */
- export function checkNum(num) {
- if (typeof(num) == 'number')
- return String.fromCharCode(0x60 + num);
- else
- return num;
- }
- // 对小于 10 的补零
- export function zeroFill(val) {
- return val < 10 ? `0${val}` : val;
- }
- /**
- * 将秒转为时:分:秒格式
- * @param {Number|String} val 秒
- * @param {'normal'|'chinese'} type 格式类型
- * @returns {String} hh:MM:ss 小于1小时返回 MM:ss
- */
- export function secondFormatConversion(val, type = 'normal') {
- const seconds = Math.floor(val); // 输入的秒数
- const hours = Math.floor(seconds / 3600); // 小时部分
- const minutes = Math.floor((seconds % 3600) / 60); // 分钟部分
- const remainingSeconds = seconds % 60; // 剩余的秒数
- // 使用零填充函数来格式化小时、分钟和秒
- const formattedHours = zeroFill(hours);
- const formattedMinutes = zeroFill(minutes);
- const formattedSeconds = zeroFill(remainingSeconds);
- // 根据时间范围返回不同的格式
- if (hours > 0) {
- if (type === 'chinese') {
- return `${hours}时${minutes}分${remainingSeconds}秒`;
- }
- return `${formattedHours}:${formattedMinutes}:${formattedSeconds}`;
- }
- if (type === 'chinese') {
- return `${minutes}分${remainingSeconds}秒`;
- }
- return `${formattedMinutes}:${formattedSeconds}`;
- }
- /**
- * 将时间转为 时:分:秒 格式
- * @param {Date} date 时间戳
- * @returns {String} hh:MM:ss
- */
- export function timeFormatConversion(date) {
- return `${zeroFill(date.getHours())}:${zeroFill(date.getMinutes())}:${zeroFill(date.getSeconds())}`;
- }
- /**
- * 将时间转为 时:分:秒 格式
- * @param {String} 你好
- * @returns {Array} ['你','好']
- */
- export function convertStringToCollection(str) {
- if (!str) return [];
- return str.split('');
- }
|