123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876 |
- import env from "@/http/config/config.js"
- /**
- * 判断字符串是否为空
- * @param obj
- * @returns {boolean}
- */
- export const isStringEmpty = (obj) => {
- if (typeof obj == "undefined" || obj == null || obj === "") {
- return true;
- } else {
- return false;
- }
- }
- /**
- * 判断对象、字符串是否为空
- * @param obj
- * @returns {boolean}
- */
- export const isObjStringEmpty = (obj) => {
- if (typeof obj == "object" && JSON.stringify(obj) == "{}") {
- return true;
- } else {
- return isStringEmpty(obj);
- }
- }
- /**
- * 判断字符串是否非空
- * @param obj
- * @returns {boolean}
- */
- export const isStringNotEmpty = (obj) => {
- return !isStringEmpty(obj);
- }
- /**
- * 判断对象、字符串是否非空
- * @param obj
- * @returns {boolean}
- */
- export const isObjStringNotEmpty = (obj) => {
- return !isObjStringEmpty(obj);
- }
- /**
- * 字符串如果为空,转换字符串为null
- * @param obj
- * @returns {boolean}
- */
- export const changeStringEmptyToNull = (obj) => {
- if (isStringEmpty(obj)) {
- obj = null;
- }
- return obj;
- }
- /**
- * 字符串如果为空,转换字符串为""
- * @param obj
- * @returns {boolean}
- */
- export const changeStringNullToEmpty = (obj) => {
- if (typeof obj == "undefined" || obj == null) {
- obj = "";
- }
- return obj;
- }
- /**
- * 字符串如果为空,转换字符串为""
- * @param obj
- * @returns {boolean}
- */
- export const stringEndWith = (str) => {
- if (str == null || str == "" || this.length == 0 || str.length > this.length)
- return false;
- if (this.substring(this.length - str.length) == str)
- return true;
- else
- return false;
- };
- export const formatDate = (shijianchuo) => {
- //shijianchuo是整数,否则要parseInt转换
- function add0(m) {
- return m < 10 ? '0' + m : m
- }
- var time = new Date(shijianchuo);
- var y = time.getFullYear();
- var m = time.getMonth() + 1;
- var d = time.getDate();
- var h = time.getHours();
- var mm = time.getMinutes();
- var s = time.getSeconds();
- return y + '-' + add0(m) + '-' + add0(d) + ' ' + add0(h) + ':' + add0(mm) + ':' + add0(s);
- }
- /**
- * 格式化时间对象
- * @param {string} fmt Date对象的格式化格式:如yyyy-MM-dd HH:mm:ss
- * @param {date} date 需要格式化的时间对象
- * @return {string} 返回格式化后的字符串,如2020-0101 00:00:00
- * */
- export const formatDateToStr = function (fmt, date) {
- fmt = fmt.replace("hh", "HH")
- let ret;
- // debugger
- const opt = {
- "y+": date.getFullYear().toString(),
- "M+": (date.getMonth() + 1).toString(),
- "d+": date.getDate().toString(),
- "H+": date.getHours().toString(),
- "m+": date.getMinutes().toString(),
- "s+": date.getSeconds().toString(),
- };
- for (let k in opt) {
- ret = new RegExp(`(${k})`).exec(fmt);
- if (ret) {
- fmt = fmt.replace(ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0"))
- }
- }
- return fmt
- }
- /**
- * 格式化时间对象
- * @param {string} str 要转换成时间对象的字符串,如2020-0101 00:00:00
- * @return {date} 转换后的时间对象
- * */
- export function formatStrToDate(str) {
- return new Date(Date.parse(str.replace(/-/g, "/")));
- }
- //数字校验
- export const digits = (str, bol) => {
- var regexp = /^[0-9]*$/;
- if (bol) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //校验只能输入大于0的正整数
- export const checkNum0 = (str, bol) => {
- var regexp = /^[1-9]\d*$/;
- if (bol) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //校验只能输入大于1的正整数
- export const checkNum1 = (str) => {
- var regexp = /^[2-9]\d*$/;
- if (bol) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //校验金额(精确到小数点2位)
- export const moneyvalid = (str, bol) => {
- var reg = /^^\d+(\.\d{2})+$/;
- if (bol) {
- if (reg.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (reg.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //校验只能输入字母
- export const english = (str, bol) => {
- var regexp = /^[A-Za-z]+$/;
- if (bol) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //检验只能输入汉字
- export const chinese = (str, bol) => {
- var regexp = /^[\u4e00-\u9fa5]{0,}$/;
- if (bol) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //校验数字和字母
- export const letterOrNumberonly = (str, bol) => {
- var regexp = /^[A-Za-z0-9]+$/;
- if (bol) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //校验数字、字母及下划线
- export const letterOrNumberOrUnderline = (str, bol) => {
- var regexp = /^\w+$/;
- if (bol) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //邮箱校验
- export const email = (str, bol) => {
- var regexp = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
- var regexp2 = /^[A-Za-z0-9._%-]+@([A-Za-z0-9-]+\.)+[A-Za-z]{2,4}$/;
- if (bol) {
- if (regexp.test(str) || regexp2.test(str)) {
- return false;
- }
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (regexp.test(str) || regexp2.test(str)) {
- return false;
- }
- return true;
- } else {
- return false
- }
- }
- };
- //校验手机号码
- export const mobile = (str, bol) => {
- var isMobile = /^1(3|4|5|6|7|8|9)\d{9}$/;
- if (bol) {
- if (isMobile.test(str))
- return false
- else
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (isMobile.test(str))
- return false
- else
- return true;
- } else {
- return false
- }
- }
- };
- //校验固定电话
- export const phone = (str, bol) => {
- var homeMobile = /^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
- if (bol) {
- if (homeMobile.test(str))
- return false
- else
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (homeMobile.test(str))
- return false
- else
- return true;
- } else {
- return false
- }
- }
- };
- //校验电话号码
- export const mobileOrPhone = (str, bol) => {
- var homeMobile = /^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
- var isMobile = /^1(3|4|5|6|7|8|9)\d{9}$/;
- if (bol) {
- if (homeMobile.test(str) || isMobile.test(str))
- return false
- else
- return true;
- } else {
- if (typeof str != "undefined" && str.length > 0) {
- if (homeMobile.test(str) || isMobile.test(str))
- return false
- else
- return true;
- } else {
- return false
- }
- }
- };
- //校验身份证号
- export const idcard = (str) => {
- var idcard1 = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
- var idcard2 = /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;
- if (idcard1.test(str) || idcard2.test(str))
- return false
- else
- return true;
- };
- //获取本周
- export const getCurrentWeek = (str) => {
- //获取当前时间
- const currentDate = new Date(str)
- //返回date是一周中的某一天
- const week = currentDate.getDay()
- //一天的毫秒数
- const millisecond = 1000 * 60 * 60 * 24
- //减去的天数
- const minusDay = week != 0 ? week - 1 : 6
- //本周 周一
- const monday = new Date(currentDate.getTime() - minusDay * millisecond)
- //本周 周日
- const sunday = new Date(monday.getTime() + 6 * millisecond)
- return [monday, sunday]
- };
- //获取上一周
- export const handleGetPrevWeek = (str) => {
- const Time = new Date(str)
- let weekNum = Time.getDay()
- weekNum = weekNum == 0 ? 7 : weekNum
- let lastDate = new Date(Time.getTime() - weekNum * 24 * 60 * 60 * 1000)
- let fitstDate = new Date(
- Time.getTime() - (weekNum + 6) * 24 * 60 * 60 * 1000
- )
- let startDate =
- `${fitstDate.getFullYear()}-${fitstDate.getMonth() + 1 < 10
- ? '0' + (fitstDate.getMonth() + 1)
- : fitstDate.getMonth() + 1
- }-${fitstDate.getDate() < 10
- ? '0' + fitstDate.getDate()
- : fitstDate.getDate()
- }`
- let endDate =
- `${lastDate.getFullYear()}-${lastDate.getMonth() + 1 < 10
- ? '0' + (lastDate.getMonth() + 1)
- : lastDate.getMonth() + 1
- }-${lastDate.getDate() < 10 ? '0' + lastDate.getDate() : lastDate.getDate()
- }`
- return [startDate, endDate]
- };
- //获取下一周
- export const handleGetNextvWeek = (str) => {
- const Time = new Date(str)
- let weekNum = Time.getDay()
- weekNum = weekNum == 0 ? 7 : weekNum
- let fitstDate = new Date(
- Time.getTime() + (7 - weekNum + 1) * 24 * 60 * 60 * 1000
- )
- let lastDate = new Date(
- Time.getTime() + (7 - weekNum + 7) * 24 * 60 * 60 * 1000
- )
- let startDate =
- `${fitstDate.getFullYear()}-${fitstDate.getMonth() + 1 < 10
- ? '0' + (fitstDate.getMonth() + 1)
- : fitstDate.getMonth() + 1
- }-${fitstDate.getDate() < 10
- ? '0' + fitstDate.getDate()
- : fitstDate.getDate()
- }`
- let endDate =
- `${lastDate.getFullYear()}-${lastDate.getMonth() + 1 < 10
- ? '0' + (lastDate.getMonth() + 1)
- : lastDate.getMonth() + 1
- }-${lastDate.getDate() < 10 ? '0' + lastDate.getDate() : lastDate.getDate()
- }`
- return [startDate, endDate]
- }
- // url参数解析
- export const getUrlkey = (url) => {
- var params = {};
- var urls = url.split("?");
- var arr = urls[1].split("&");
- for (var i = 0, l = arr.length; i < l; i++) {
- var a = arr[i].split("=");
- params[a[0]] = a[1];
- }
- return params;
- }
- //获取上一个年月
- export const getPreMonth = () => {
- var date = new Date();
- var year = date.getFullYear();
- var month = date.getMonth()
- if (month == 0) {
- year = year - 1;
- month = 12;
- }
- month = month <= 9 ? "0" + month : month
- return year + '年' + month + '月'
- }
- //解决IOS日期显示问题
- export const formateIOS = (str, pattern) => {
- var format = str.replace(/\-/g, "/"); //把“-”,替换成‘/’
- var date = new Date(format),
- y = date.getFullYear(),
- m = (date.getMonth() + 1).toString().padStart(2, 0),
- d = date.getDate().toString().padStart(2, 0),
- h = date.getHours().toString().padStart(2, 0),
- mi = date.getMinutes().toString().padStart(2, 0),
- se = date.getSeconds().toString().padStart(2, 0);
- if (pattern == "yyyy.mm.dd") {
- return `${y}.${m}.${d}`;
- } else {
- return y + '-' + m + '-' + d;
- }
- }
- //小写金额转大写
- export const DX = (n) => {
- var newchar = "";
- var Num = n;
- if (Num == "") {
- //输入框删减为空时,将大写金额的内容值设为原始状态,当然也可以根据需求进行修改
- newchar = "零元整";
- return newchar;
- }
- var part = String(Num).split(".");
- for (let i = part[0].length - 1; i >= 0; i--) {
- if (part[0].length > 10) {
- newchar = "位数过大,无法计算"; //前面如果有验证位数的,此处判断可去掉
- return newchar;
- }
- var tmpnewchar = ""
- var perchar = part[0].charAt(i);
- switch (perchar) {
- case "0":
- tmpnewchar = "零" + tmpnewchar;
- break;
- case "1":
- tmpnewchar = "壹" + tmpnewchar;
- break;
- case "2":
- tmpnewchar = "贰" + tmpnewchar;
- break;
- case "3":
- tmpnewchar = "叁" + tmpnewchar;
- break;
- case "4":
- tmpnewchar = "肆" + tmpnewchar;
- break;
- case "5":
- tmpnewchar = "伍" + tmpnewchar;
- break;
- case "6":
- tmpnewchar = "陆" + tmpnewchar;
- break;
- case "7":
- tmpnewchar = "柒" + tmpnewchar;
- break;
- case "8":
- tmpnewchar = "捌" + tmpnewchar;
- break;
- case "9":
- tmpnewchar = "玖" + tmpnewchar;
- break;
- }
- switch (part[0].length - i - 1) {
- case 0:
- tmpnewchar = tmpnewchar + "元";
- break;
- case 1:
- if (perchar != 0) tmpnewchar = tmpnewchar + "拾";
- break;
- case 2:
- if (perchar != 0) tmpnewchar = tmpnewchar + "佰";
- break;
- case 3:
- if (perchar != 0) tmpnewchar = tmpnewchar + "仟";
- break;
- case 4:
- tmpnewchar = tmpnewchar + "万";
- break;
- case 5:
- if (perchar != 0) tmpnewchar = tmpnewchar + "拾";
- break;
- case 6:
- if (perchar != 0) tmpnewchar = tmpnewchar + "佰";
- break;
- case 7:
- if (perchar != 0) tmpnewchar = tmpnewchar + "仟";
- break;
- case 8:
- tmpnewchar = tmpnewchar + "亿";
- break;
- case 9:
- tmpnewchar = tmpnewchar + "拾";
- break;
- }
- newchar = tmpnewchar + newchar;
- }
- if (("" + Num).indexOf(".") != -1) {
- if (part[1].length > 2) {
- part[1] = part[1].substr(0, 2)
- }
- for (i = 0; i < part[1].length; i++) {
- tmpnewchar = ""
- var perchar = part[1].charAt(i)
- switch (perchar) {
- case "0":
- tmpnewchar = "零" + tmpnewchar;
- break;
- case "1":
- tmpnewchar = "壹" + tmpnewchar;
- break;
- case "2":
- tmpnewchar = "贰" + tmpnewchar;
- break;
- case "3":
- tmpnewchar = "叁" + tmpnewchar;
- break;
- case "4":
- tmpnewchar = "肆" + tmpnewchar;
- break;
- case "5":
- tmpnewchar = "伍" + tmpnewchar;
- break;
- case "6":
- tmpnewchar = "陆" + tmpnewchar;
- break;
- case "7":
- tmpnewchar = "柒" + tmpnewchar;
- break;
- case "8":
- tmpnewchar = "捌" + tmpnewchar;
- break;
- case "9":
- tmpnewchar = "玖" + tmpnewchar;
- break;
- }
- if (i == 0) tmpnewchar = tmpnewchar + "角";
- if (i == 1) tmpnewchar = tmpnewchar + "分";
- newchar = newchar + tmpnewchar;
- }
- }
- while (newchar.search("零元") != -1) {
- newchar = newchar.replace("零零", "零");
- newchar = newchar.replace("零亿", "亿");
- newchar = newchar.replace("亿万", "亿");
- newchar = newchar.replace("零万", "万");
- newchar = newchar.replace("零元", "元");
- newchar = newchar.replace("零角", "");
- newchar = newchar.replace("零分", "");
- }
- if (newchar.charAt(newchar.length - 1) == "元" || newchar.charAt(newchar.length - 1) == "角") {
- newchar = newchar + "整";
- }
- return newchar;
- }
- //计算数组对象某个属性的总和
- export const countTotal = (arr, keyName) => {
- let $total = 0;
- $total = arr.reduce(function (total, currentValue, currentIndex, arr) {
- return parseFloat(currentValue[keyName]) ? (total + parseFloat(currentValue[keyName])) : total;
- }, 0);
- return $total;
- }
- //防抖函数
- let timeout = null;
- export const debounce = (fn, wait) => {
- if (timeout != null) clearTimeout(timeout)
- timeout = setTimeout(fn, wait)
- }
- //对象深拷贝
- export const deepClone = (obj) => {
- let objClone = Array.isArray(obj) ? [] : {};
- if (obj && typeof obj === "object") {
- for (var key in obj) {
- if (obj.hasOwnProperty(key)) {
- //判断ojb子元素是否为对象,如果是,递归复制
- if (obj[key] && typeof obj[key] === "object") {
- objClone[key] = deepClone(obj[key]);
- } else {
- //如果不是,简单复制
- objClone[key] = obj[key];
- }
- }
- }
- }
- return objClone;
- }
- //字母大写转小写
- export const strChange = (arg) => {
- var str=arg.split('');
- for(var i = 0; i < str.length; i++) {
- if (str[i].charAt() >= "a" && str[i].charAt() <= "z") {
- //转换成大写
- // str[i] = str[i].toUpperCase();
- } else {
- //转换成小写
- str[i] = str[i].toLowerCase();
- }
- }
- return str.join('');
- }
- //创建unid
- export const createUnid = () => {
- var unid = "";
- const str = "0 1 2 3 4 5 6 7 8 9 A B C D E F"
- var arr = str.split(" ");
- var dateStr = getCurDateStr();
- for (let i = 0; i < 18; i++) {
- unid += arr[Math.round(Math.random() * (arr.length - 1))];
- }
- return dateStr + unid;
- }
- const getCurDateStr = () => {
- //获取当前时间
- var mydate = new Date();
- var newyear = mydate.getFullYear();
- var newmonth = mydate.getMonth() + 1;
- newmonth = (newmonth < 10 ? "0" + newmonth : newmonth);
- var newDate = mydate.getDate();
- newDate = (newDate < 10 ? "0" + newDate : newDate);
- var hours = mydate.getHours(); //获取当前小时数(0-23)
- hours = (hours < 10 ? "0" + hours : hours);
- var minutes = mydate.getMinutes(); //获取当前分钟数(0-59)
- minutes = (minutes < 10 ? "0" + minutes : minutes);
- var seconds = mydate.getSeconds(); //获取当前秒数(0-59)
- seconds = (seconds < 10 ? "0" + seconds : seconds);
- var datetime = "" + newyear + newmonth + newDate + hours + minutes + seconds;
- return datetime;
- }
- //获取短信模板消息体 已使用
- export const getmestemplate = async (e) => {
- const res = await getSmsTemplate(e)
- return res.data.data
- }
- //通过字典获取值
- export const queryType = async (e) => {
- const res = await queryByType(e)
- return res.data.data[e.dictTypes].map(item => {
- return {
- label: item.dictname,
- value: item.dictvalue,
- }
- });
- }
- //把年月日时间格式转换成可以识别的时间格式
- export const getDateToNum = (date) => {
- let redate = ""
- if (date.indexOf("年") > 1) {
- redate = date.substring(0, date.indexOf("年"))
- }
- if (date.indexOf("月") > 1) {
- redate = redate + "-" + date.substring(date.indexOf("月") - 2, date.indexOf("月"))
- }
- if (date.indexOf("日") > 1) {
- redate = redate + "-" + date.substring(date.indexOf("日") - 2, date.indexOf("日"))
- }
- return redate
- }
- /**
- * 弹窗提示方法
- * @param {String} msg 提示的消息
- * @param {Function} func 成功后执行的方法
- */
- export async function toastFunc(msg = '', func = null) {
- uni.showToast({
- icon: "none",
- title: msg,
- complete() {
- setTimeout(async () => {
- func && await func()
- }, 1000)
- }
- })
- }
- /**
- * 模态框提示方法
- * @param {String} msg 提示的消息
- * @param {Function} func 点击确定后执行的方法
- */
- export function modalFunc(msg = '', func = null, func2 = null) {
- uni.showModal({
- title: '提示',
- content: msg,
- complete(e) {
- if (e.confirm) {
- //点击确定执行的方法
- func && func()
- }else if(e.cancel){
- //点击取消执行的方法
- func2 && func2()
- }
- }
- })
- }
- // 跳转缺省页面
- export function jumpResponseHandle(code, msg) {
- uni.redirectTo({
- url: '/pages/commonview/responceHandle?code=' + code + '&msg=' + msg
- })
- }
- // 判断日期大小
- export function computingDate(startDate, endDate) {
- startDate = new Date(startDate).getTime()
- endDate = new Date(endDate).getTime()
- if (startDate == endDate) {
- return '等于'
- } else if (startDate < endDate) {
- return '小于'
- } else {
- return '大于'
- }
- }
- //获取本周日期 i传0 返回本周第一天
- export function getWeek(i) {
- var now = new Date();
- var firstDay = new Date(now - (now.getDay() - 1) * 86400000);
- firstDay.setDate(firstDay.getDate() + i);
- let mon = Number(firstDay.getMonth()) + 1;
- let day = firstDay.getDate();
- if (mon < 10) {
- mon = '0' + mon
- }
- if (day < 10) {
- day = '0' + day
- }
- return now.getFullYear() + "-" + mon + "-" + day;
- }
- export function changeNumToHan(num) {
- var arr1 = new Array('零', '一', '二', '三', '四', '五', '六', '七', '八', '九');
- var arr2 = new Array('', '十', '百', '千', '万', '十', '百', '千', '亿', '十', '百', '千', '万', '十', '百', '千', '亿');//可继续追加更高位转换值
- 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, '零十');//貌似正规读法是零一十
- //将【一十】换成【十】
- result = result.replace(/^一十/g, '十')
- return result;
- }
|