日常收集整理的JavaScript常用函数方法

函数就是包裹在花括号中的代码块,前面使用了关键词 function:

function functionname() { 这里是要执行的代码 }

当调用该函数时,会执行函数内的代码。

可以在某事件发生时直接调用函数(比如当用户点击按钮时),并且可由 JavaScript 在任何位置进行调用。

提示:JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。

字符串长度截取

functiocutstr(strlen{ vatemp, icoun, patr/[^\x-\xff]/, strr""; fo(vastr.lengthi++{ i(icounle{ temstr.substr(i); i(patrn.exec(temp=null{ icounicoun els{ icounicoun } strr+temp els{ break; } } returstrr"..." }

替换全部

String.prototype.replaceAlfunction(ss{ returthis.replace(neRegExp(s"gm")s) }

清除空格

String.prototype.trifunction({ vareExtraSpac/^\s*(.*?)\s+$/; returthis.replace(reExtraSpace"$") }

清除左空格/右空格

functioltrim(s)returs.replace/^(\s*| *)/"")} functiortrim(s)returs.replace/(\s*| *)$/"")}

判断是否以某个字符串开头

String.prototype.startWitfunctio(s{ returthis.indexOf(s= }

判断是否以某个字符串结束

String.prototype.endWitfunctio(s{ vathis.lengts.length; retur(>&this.lastIndexOf(s=d) }

转义html标签

functioHtmlEncode(text{ returtext.replace(/&/g'&').replace(/\"/g'"').replace(/</g'<').replace(/>/g'>') }

时间日期格式转换

Date.prototype.Formafunction(formatStr{ vastformatStr; vaWee['日''一''二''三''四''五''六']; ststr.replace(/yyyy|YYYY/this.getFullYear()); ststr.replace(/yy|YY/(this.getYear((this.getYear().toString('(this.getYear()); ststr.replace(/MM/(this.getMonth((this.getMonth().toString('(this.getMonth()); ststr.replace(/M/g(this.getMonth()); ststr.replace(/w|W/gWeek[this.getDay()]); ststr.replace(/dd|DD/this.getDate(this.getDate().toString('this.getDate()); ststr.replace(/d|D/gthis.getDate()); ststr.replace(/hh|HH/this.getHours(this.getHours().toString('this.getHours()); ststr.replace(/h|H/gthis.getHours()); ststr.replace(/mm/this.getMinutes(this.getMinutes().toString('this.getMinutes()); ststr.replace(/m/gthis.getMinutes()); ststr.replace(/ss|SS/this.getSeconds(this.getSeconds().toString('this.getSeconds()); ststr.replace(/s|S/gthis.getSeconds()); returstr }

判断是否为数字类型

functioisDigit(value{ vapatr/^[-]*$/; i(patrn.exec(value=nul|valu=""{ returfalse els{ returtrue } }

设置cookie值

functiosetCookie(namevalueHours{ vaneDate(); vaoffse; vautd.getTime((d.getTimezoneOffset(); vanut(offset); vaexneDate(nd); exp.setTime(exp.getTime(Hour); document.cookinam"=escape(value";path=https://www.jb51.net/;expires=exp.toGMTString(";domain=doc.com;" }

获取cookie值

functiogetCookie(name{ vaardocument.cookie.match(neRegExp("(^)nam"=([^;]*)(;|$)")); i(ar!nullreturunescape(arr[]); returnull }

加入收藏夹

functioAddFavorite(sURLsTitle{ tr{ window.external.addFavorite(sURLsTitle) catch(e{ tr{ window.sidebar.addPanel(sTitlesURL"") catch(e{ alert("加入收藏失败,请使用Ctrl+D进行添加") } } }

设为首页

functiosetHomepage({ i(document.all{ document.body.style.behavio'url(#default#homepage)'; document.body.setHomePage('http://wcboy.com') elsi(window.sidebar{ i(window.netscape{ tr{ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect") catch(e{ alert("该操作被浏览器拒绝,如果想启用该功能,请在地址栏内输about:config,然后将signed.applets.codebase_principal_suppor值该为true") } } vaprefComponents.classes['@mozilla.org/preferences-service;'].getService(Components.interfaces.nsIPrefBranch); prefs.setCharPref('browser.startup.homepage''http://wcboy.com') } }

加载样式文件

functioLoadStyle(url{ tr{ document.createStyleSheet(url) catch(e{ vacssLindocument.createElement('link'); cssLink.re'stylesheet'; cssLink.typ'text/css'; cssLink.hreurl; vaheadocument.getElementsByTagName('head')[]; head.appendChild(cssLink) } }

返回脚本内容

functioevalscript(s{ if(s.indexOf('<script'=-returs; va/<script[^\>]*?>([^\x]*?)<\/script>/ig; vaar[]; while(arp.exec(s){ vap/<script[^\>]*?src=\"([^\>]*?)\"[^\>]*?(reload=\"\")?(?:charset=\"([\w\-]+?)\")?><\/script>/i; vaarr[]; arrp.exec(arr[]); if(arr{ appendscript(arr[]''arr[]arr[]); els{ p/<script(.*?)>([^\x]+?)<\/script>/i; arrp.exec(arr[]); appendscript(''arr[]arr[].indexOf('reload='!-); } } returs; }

清除脚本内容

functiostripscript(s{ returs.replace(/<script.*?>.*?<\/script>/ig''); }

动态加载脚本文件

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgzypx.html