当前位置: 首页 > Web前端 > HTML5

前端程序员必须收藏的20个方法

时间:2023-04-05 21:07:00 HTML5

小编最近整理了一些前端经常用到的方法,以便在后面的项目中使用。这些是项目中经常使用的方法。与您的朋友分享。记得点收藏,关注,点赞哦~~~1.EmailexportconstisEmail=(s)=>{return/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s)}2。手机号码exportconstisMobile=(s)=>{return/^1[0-9]{10}$/.test(s)}3.电话号码exportconstisPhone=(s)=>{return/^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s)}4.是否字符串exportconstisString=(o)=>{returnObject.prototype.toString.call(o).slice(8,-1)==='String'}5.是否为数字exportconstisNumber=(o)=>{returnObject.prototype.toString.call(o).slice(8,-1)==='Number'}6.根据url地址下载exportconstdownload=(url)=>{varisChrome=navigator.userAgent.toLowerCase().indexOf('chrome')>-1;varisSafari=navigator.userAgent.toLowerCase().indexOf('safari')>-1;如果(isChrome||isSafari){varlink=document.createElement('a');link.href=网址;if(link.download!==undefined){varfileName=url.substring(url.lastIndexOf('/')+1,url.length);link.download=文件名;}if(document.createEvent){vare=document.createEvent('MouseEvents');e.initEvent('点击',true,true);link.dispatchEvent(e);返回真;}}if(url.indexOf('?')===-1){url+='?download';}window.open(url,'_self');returntrue;}7.严格ID校验exportconstisCardID=(sId)=>{if(!/(^\d{15}$)|(^\d{17}(\d|X|x)$)/.test(sId)){console.log('您输入的身份证长度或格式错误')returnfalse}//身份证所在城市varaCity={11:"北京",12:"天津",13:“河北”、14:“山西”、15:“内蒙古”、21:“辽宁”、22:“吉林”、23:“黑龙江”、31:“上海”、32:“江苏”、33:“浙江”,34:“安徽”,35:“福建”,36:“江西”,37:“山东”,41:“河南”,42:“湖北”,43:“湖南”,44:“广东”,45:“广西”,46:“海南”,50:“重庆”,51:“四川”,52:“贵州”,53:“云南”,54:“西藏”,61:“陕西”、62:“甘肃”、63:“青海”、64:“宁夏”、65:“新疆”、71:“台湾”、81:“香港”、82:“澳门”、91:“海外”};if(!aCity[parseInt(sId.substr(0,2))]){console.log('你的身份证区域不合法')returnfalse}//出生日期验证varsBirthday=(sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2))).replace(/-/g,"/"),d=newDate(sBirthday)if(sBirthday!=(d.getFullYear()+"/"+(d.getMonth()+1)+"/"+d.getDate())){控制台。log('身份证上的出生日期不合法')returnfalse}//身份证号码验证varsum=0,weights=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],codes="10X98765432"for(vari=0;i{returnarr.sort((a,b)=>{switch(type){case1:返回a-b;情况2:返回b-a;情况3:返回Math.random()-0.5;默认值:返回arr;}})}9.重复数据删除exportconstunique=(arr)=>{if(Array.hasOwnProperty('from')){returnArray.from(newSet(arr));}else{varn={},r=[];对于(vari=0;i{varindex=arr.indexOf(ele);if(index>-1){arr.splice(index,1);}returnarr;}11.字符转换,类型:1:首字母大写2:首字母小写3:大小写转换4:全部大写5:全部小写exportconsttrim=(str,type)=>{type=type||1开关(类型){案例1:返回海峡。替换(/\s+/g,“”);情况2:返回str.replace(/(^\s*)|(\s*$)/g,"");C情况3:返回str.replace(/(^\s*)/g,"");情况4:返回str.replace(/(\s*$)/g,"");默认值:返回str;}}12。最大值导出constmax=(arr)=>{returnMath.max.apply(null,arr);}13.最小值exportconstmin=(arr)=>{returnMath.min.apply(null,arr);}14.Sumexportconstsum=(arr)=>{returnarr.reduce((pre,cur)=>{returnpre+cur})}15.averageexportconstaverage=(arr)=>{returnthis.sum(arr)/arr.length}16.去掉空格,键入:1-所有空格2-前后空格导出后4个空格之前的3个空格consttrim=(str,type)=>{type=type||1switch(type){case1:returnstr.replace(/\s+/g,"");情况2:返回str.replace(/(^\s*)|(\s*$)/g,"");情况3:返回str.replace(/(^\s*)/g,"");情况4:返回str.replace(/(\s*$)/g,"");默认值:返回str;}}17.判断两个对象是否有相同的key值exportconstisObjectEqual=(a,b)=>{varaProps=Object.getOwnPropertyNames(a);varbProps=Object.getOwnPropertyNames(b);如果(aProps.length!==bProps.length){返回false;}for(vari=0;i{returnarr.indexOf(val)!=-1?true:false;}19.获取url参数exportconstgetQueryString=(name)=>{constreg=newRegExp('(^|&)'+name+'=([^&]*)(&|$)','我');constsearch=window.location.search.split('?')[1]||'';constr=search.match(reg)||[];returnr[2];}20.判断类型setexportconstcheckStr=(str,type)=>{switch(type){case'phone'://手机号码return/^1[3|4|5|6|7|8|9][0-9]{9}$/.test(str);case'tel'://座机返回/^(0\d{2,3}-\d{7,8})(-\d{1,4})?$/.test(str);case'card'://身份证返回/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.测试(海峡);case'pwd'://密码以字母开头,长度在6到18之间,只能包含字母、数字和下划线return/^[a-zA-Z]\w{5,17}$/.test(str)case'postal'://邮政编码return/[1-9]\d{5}(?!\d)/.test(str);case'QQ'://QQ号return/^[1-9][0-9]{4,9}$/.test(str);case'email'://邮箱返回/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(海峡);case'money'://金额(小数点后2位)return/^\d*(?:\.\d{0,2})?$/.test(str);case'URL'://URL返回/(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?/.test(str)case'IP'://IP返回/((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))/.test(str);case'date'://日期时间return/^(\d{4})\-(\d{2})\-(\d{2})(\d{2})(?:\:\d{2}|:(\d{2}):(\d{2}))$/.test(str)||/^(\d{4})\-(\d{2})\-(\d{2})$/.test(str)case'number'://numberreturn/^[0-9]$/.测试(海峡);case'english'://英文return/^[a-zA-Z]+$/.test(str);case'chinese'://Chinesereturn/^[\\u4E00-\\u9FA5]+$/.test(str);case'lower'://小写return/^[a-z]+$/.test(str);case'upper'://大写return/^[A-Z]+$/.test(str);case'HTML'://HTML标签return/<("[^"]*"|'[^']*'|[^'">])*>/.test(str);默认值:返回真;}}小编不易,如有收获,微信打赏小编一杯娃哈哈单身狗葵花宝典,敬请期待!