国内最专业的IT技术学习网

UI设计

当前位置:主页 > UI设计 >

推荐10 个短小却超实用的 JavaScript 代码段

发布时间:2019/07/02标签:   代码    点击量:

原标题:推荐10 个短小却超实用的 JavaScript 代码段
JavaScript正变得越来越风行,它曾经成为前端开辟的第一抉择,而且应用基于JavaScript言语的NodeJS,咱们也能够开辟出高机能的后端效劳,乃至我还看到在硬件编程范畴也呈现了JavaScript的身影。JavaScript正在逐步退化为一门万能的开辟言语。但用好JavaScript并不轻易,你除了须要控制它的语法并晓得怎样写出高品质的代码以外,还须要懂得怎样处理那些简直在每个名目中都市碰到的需要场景,比方:推断日期,高亮文本,限度字符数等等,有许多第三方库能够处理这些成绩,但这些库能够并非只是为处理这一个成绩而创立的,这象征着你须要引入了许多有关的代码,这将使你的全部体系变得痴肥,并且也会影响到体系的机能。我的做法是,网络和应用那些罕见的JavaScript代码段,并在须要时,尽能够起首应用它们。上面就是我网络的10段有用JavaScript代码,基于它们你还能够制造出更强盛的JS插件或功效函数。1. 推断日期能否无效JavaScript中自带的日期函数仍是太甚简略,很难满意实在名目中对差别日期格局停止剖析和推断的须要。JQuery也有一些第三方库来使日期相干的处置变得简略,但偶然你能够只要要一个十分简略的函数,而不想引入一个宏大的第三方库。这时,你能够应用上面这段日期校验代码,它同意你自界说日期格局并停止日期无效性的校验。functionisValidDate(value,userFormat){//SetdefaultformatifformatisnotprovideduserFormat=userFormat||'mm/dd/yyyy';//Findcustomdelimiterbyexcluding//month,dayandyearcharactersvardelimiter=/[^mdy]/.exec(userFormat)[0];//Createanarraywithmonth,dayandyear//soweknowtheformatorderbyindexvartheFormat=userFormat.split(delimiter);//CreatearrayfromuserdatevartheDate=value.split(delimiter);functionisDate(date,format){varm,d,y,i=0,len=format.length,f;for(i;i<len;i++){f=format[i];if(/m/.test(f))m=date[i];if(/d/.test(f))d=date[i];if(/y/.test(f))y=date[i];}return(m>0&&m<13&&y&&y.length===4&&d>0&&//Checkifit'savaliddayofthemonthd<=(newDate(y,m,0)).getDate());}returnisDate(theDate,theFormat);}应用方式:上面这个挪用前往false,由于11月份没有31天isValidDate('dd-mm-yyyy','31/11/2012')2. 猎取一组元素的最大宽度或高度上面这个函数,关于须要停止静态排版的开辟职员十分有效。vargetMaxHeight=function($elms){varmaxHeight=0;$elms.each(function(){//InsomecasesyoumaywanttouseouterHeight()insteadvarheight=$(this).height();if(height>maxHeight){maxHeight=height;}});returnmaxHeight;};应用方式:$(elements).height(getMaxHeight($(elements)));3. 高亮文本有许多JQuery的第三方库能够完成高亮文本的功效,但我更喜爱用上面这一小段JavaScript代码来完成这个功效,它十分短小,并且能够依据我的须要去停止机动的修正,并且能够本人界说高亮的款式。上面这两个函数能够关心你创立本人的文本高亮插件。functionhighlight(text,words,tag){//Defaulttagifnotagisprovidedtag=tag||'span';vari,len=words.length,re;for(i=0;i<len;i++){//Globalregextohighlightallmatchesre=newRegExp(words[i],'g');if(re.test(text)){text=text.replace(re,'<'+tag+'class="highlight">$&');}}returntext;}

版权信息Copyright © IT技术教程 版权所有    ICP备案编号:鲁ICP备09013610号