jj-fast-utils
Version:
🚀 FE utils for anyone !
3 lines (2 loc) • 1.77 kB
JavaScript
var r=r=>{const e=10**(r-1),t=10**r-1;return`${Math.floor(Math.random()*(t-e+1))+e}`};var e=r=>{const e=["零","一","二","三","四","五","六","七","八","九"],t=["","十","百","千","万","十","百","千","亿","十","百","千","万","十","百","千","亿"];if(!r||isNaN(r))return"零";const o=r.toString().split("");let a="";for(let r=0;r<o.length;r++){const s=o.length-1-r;a=t[r]+a;const n=o[s];a=e[Number(n)]+a}return a=a.replace(/零([千百十])/g,"零").replace(/十零/g,"十"),a=a.replace(/零+/g,"零"),a=a.replace(/零亿/g,"亿").replace(/零万/g,"万"),a=a.replace(/亿万/g,"亿"),a=a.replace(/零+$/,""),a=a.replace(/^一十/g,"十"),a};var t=r=>{if("string"!=typeof r)throw new Error("color has to be type of `string`");if("#"===r.substr(0,1))return{hex:r,alpha:1};const e=r.replace(/\s+/g,""),t=/(.*?)rgb(a)?\((\d{1,3}),(\d{1,3}),(\d{1,3})(,([01]|1.0*|0?\.(\d*)))?\)/.exec(e);if(!t)throw new Error(`given color (${r}) isn't a valid rgb or rgba color`);const o=parseInt(t[3],10),a=parseInt(t[4],10),s=parseInt(t[5],10);let n=t[6]?/[\d.]+/.exec(t[6])[0]:"1";const p=(s|a<<8|o<<16|1<<24).toString(16).slice(1);return"."===n.substr(0,1)&&(n=parseFloat(`0${n}`)),n=parseFloat(Math.round(100*n))/100,{hex:`#${p.toString(16)}`,alpha:n}};var o=r=>{const e=Object.prototype.toString.call(r).split(" ")[1];return e.substring(0,e.length-1).toLowerCase()};var a=r=>/^\d{6}$/.test(`${r}`);var s=r=>/^[\w.!#$%&’*+/=?^`{|}~-]+@[a-zA-Z\d-]+(?:\.[a-zA-Z\d-]+)*$/.test(r);var n=r=>!r;var p=r=>{try{return JSON.parse(r),!0}catch(r){return!1}};exports.generateNumberStr=r,exports.getDataType=o,exports.isCode=a,exports.isEmail=s,exports.isEmpty=n,exports.isJSON=p,exports.numberToChinese=e,exports.rgbTohex=t;
//# sourceMappingURL=node.js.map
;