首頁 >web前端 >js教程 >100個不能錯過的實用JS自訂函數_javascript技巧

100個不能錯過的實用JS自訂函數_javascript技巧

WBOY
WBOY原創
2016-05-16 16:56:501217瀏覽

1、原生JavaScript實作字串長度截取

複製程式碼 程式碼如下:


程式碼如下:


    var temp;
    var icount = 0;
    var patrn = /[^x00-xff]/         if (icount           if (patrn.exec( temp) == null) {
                icount = icount 1
         = icount 2
            }
              🎜> }
    }
    return strre "..."
}

2、原生JavaScript取得網域主機


複製碼🎜> 代碼如下:function getHost(url) {    var host = "null";
      var host== "null";
   null == url) {
        url = window.location.href;
    }
    var regex = /^w ://([^/]). url.match(regex);
    if(typeof match != "undefined" && null != match) {
        host = match[1];;

3、原生JavaScript清除空格




複製代碼


代碼如下:4、原生JavaScript替換全部




複製程式碼


程式碼如下:
程式碼如下:String.prototype .replaceAll = function(s1, s2) {
    return this.replace(new RegExp(s1, "gm"), s2)
}

5、原生JavaScript轉義html標籤
}

5、原生JavaScript轉義html標籤
複製程式碼 程式碼如下:

function HtmlEncode(text) {
return 🎜>f /&/g, '&').replace(/"/g, '"').replace(/, '/g, '>')
}

6、原生JavaScript還原html標籤
複製代碼 代碼如下:

function HtmlDecode(text) {
    return text.replace(/&/g, '&').replace(/"/g, '"').replace(/, '/g, '>')
}

7、原生JavaScript時間日期格式轉換
複製程式碼 程式碼如下:

Date.prototype.Format = function(formatStr) {
    var str = formatStr;
    var Week = ['日', '一', '二', '三', '四三' ', '五', '六'];
    str = str.replace(/yyyy|YYYY/, this.getFullYear());
    str = str.replace(/yy|YY/, (this .getYear() % 100) > 9 ? (this.getYear() % 100).toString() : '0' (this.getYear() % 100));
    str = str.replace(/MM / , (this.getMonth() 1) > 9 ? (this.getMonth() 1).toString() : '0' (this.getMonth() 1));
    str = str.replace(/ M/ g, (this.getMonth() 1));
    str = str.replace(/w|W/g, Week[this.getDay()]);
    str = str.replace(/ dd| DD/, this.getDate() > 9 ? this.getDate().toString() : '0' this.getDate());
    str = str.replace(/d|D/g, this.getDate ());
    str = str.replace(/hh|HH/, this.getHours() > 9 ? this.getHours().toString() : '0' this.getHours()) ;
str = str.replace(/h|H/g, this.getHours());
    str = str.replace(/mm/, this.getMinutes() > 9 ? this.getMinutes( ).toString() : '0' this.getMinutes());
    str = str.replace(/m/g, this.getMinutes());
    str = str.replace(/ss|SS /, this.getSeconds () > 9? >    return str
}

8、實時Jav​​aScript判斷是否為數字類型


複製代碼代碼如下:
function isDigit(value) {
    var patrn = /^[0-9]*$/;
    if (patrn.exec(value) == null || value == "") {
        return false
    } else {
        return true
 🎜>


複製程式碼


程式碼如下:
function setCookie(name, value, Hours) { d ); var offset = 8;    var utc = d.getTime() (d.getTimezoneOffset() * 60000);    var nd = 60000);
    var nd = utc (3600000 new Date(nd) ;
    exp.setTime(exp.getTime() 小時* 60 * 60 * 1000);
    document.cookie = name "=" escape(value) ";path=/;expires= " exp.toGMTString( ) ";domain=360doc.com;"
}

10、JavaScript取得cookie值




複製程式碼


複製程式碼複製程式碼
複製碼>

程式碼如下:


function getCookie(name) {
    var arr = document.cookie.match(new RegExp("(^| )" name "=(^| [^;]*)(;|$)"));
    if (arr != null) return unescape(arr[2]);
    return null
}11 return null}11 , 複製JavaScript加入收藏夾


複製代碼


代碼如下:
    嘗試{
        window.external.addFavorite(sURL, sTitle)
         window.sidebar.addPanel(sTitle) , sURL, "" )
        } catch(e) {
           alert("加入收藏失敗,請使用Ctrl D 🎜 >12、複製JavaScript設為首頁


複製程式碼程式碼如下:

function setHomepage() {
    if (document.all) {
        document.body.style.behavior = 'url(#defaultaultdhomecageo. ('http://www.jq-school.com')
    } else if (window.sidebar) {
        if (window.netscape) {            } catch(e) {
                alert("該操作被瀏覽器拒絕,如果想啟用該功能,請在地址欄內輸入about:config,然後將項signed. applets.codebase_principal_support 值該為true")
            }
        }
getService(Components.interfaces.nsIPrefBranch);
        prefs.setCharPref('browser.startup.homepage', 'http://www.jq-school.com')
    }
}

    }
}

13、Java  }
}
13、Java  }}13、Java  }}
13、Java  }
}

13,Java  }




複製程式碼


程式碼如下:       (e) {}
}

14、原生JavaScript載入樣式檔案




複製程式碼



複製程式碼

程式碼如下:
function LoadStyle(url) {    try {        cssLink = document.createElement(' link');        cssLink.rel = 'stylesheet';        cssLink.type = 'text/cs   head = document.getElementsByTagName('head' )[0];        head.appendChild(cssLink)
    }
}

15、原生Java>複製程式碼


程式碼如下:


function evalscript(s) {
  if(s.indexOf('/ig;
  var arr = [];
  while(arr = p. exec(s)) {
    var p1 = /<script>]*?src="([^>]*?)"[^>]*?(reload="1")?(?: charset="([w-] ?)")?></script>/i;
    var arr1 = [];
    arr1 = p1.exec(arr[0]);
    if( arr1) {
      appendscript(arr1[1], '', arr1[2], arr1[3]);
    } else {
    x00] ?)/i;
      arr1 = p1.exec(arr[0]);
      appendscript('', arr1[2], arr1[1].indexOf('reload=' ) != -1);
    }  }  return s;}16、原生JavaScript清除腳本內容


複製程式碼

程式碼如下:
function stripscript(s) {  return s.replace(/.*? /ig, '');}17、原生JavaScript動態載入腳本檔案
複製程式碼 程式碼如下:

函數appendscript(src, text, reload, charset) {
  var id = hash(src text);
  if(!reload && in_array(id, evalscripts)) return;
if(reload && $(id)) {
    $(id).parentNode.removeChild($(id));
  }

  evalscripts.push(id);
  var scriptNode = document.createElement("script");
  scriptNode.type = "text/javascript";
  scriptNode.id = idNode.type = "text/javascript";
  scriptNode.id = idNode.  嘗試{
    if(src) {
   = false;
      scriptNode.onload = function () {
        scriptNode. = true;
        JSLOADED[src] = 1;
      };
     || scriptNode.readyState = = '完整') && !scriptNode. {
          scriptNode. = true;
          JSLOADED[src } 🎜>    } else if(text){
scriptNode .text = text;
    }
    document.getElementsByTagName('head')[0].appendChild(scriptNode);
  } catch(e) {}
}
18 、複製JavaScript返回按ID搜尋的元素物件



複製程式碼

程式碼如下:程式碼如下:
程式碼如下:


程式碼如下:

  return !id null : document.getElementById(id);}19、JavaScript瀏覽返回器版本內容


複製程式碼


程式碼如下:


function browserVersion(types) {
  var other = 1;
  類型)
    var v = types[i] ? types[i] : i;
    if(USERAGENT.indexOf(v) != -1) {
    Reg  var re = new | \s)([\d\.] )', 'ig');
      var matches = re.exec(USERAGENT);
      var ver = matches != null ? mat matoo >      other = ver !== 0 && v != 'mozilla' ? 0 : 其他;
    }else {
      var ver = 0;
    }
    eval('BROWSER.' i . ;複製程式碼


程式碼如下:


函數$(id) {
  return !id ? null : document.getElementById(id);
}
function display(id) {
  var obj = $(id);
  if(obj.style.visibility) {
 style.visibility = obj.style.visibility == '可見'? 'none' : '';
  }
}
21、原來JavaScript有insertBefore方法,沒有insertAfter方法? 複製程式碼程式碼如下:
function insertAfter(newChild,refChild){
  var parElem=refld.Child,refChild){
  var parElem=refld..Child,refChild){
  var parElem=refld..Child,refChild){
  var parElem=refld.. .lastChild==refChild){
    refChild.appendChild(newChild);
  }else{
    parElem.insertBefore(newChild,refChild.nextSibling); >22、原生JavaScript中兼容瀏覽器綁定元素事件



複製代碼
代碼如下: function addEventSamp(obj,evt,fn){  if (obj.addEventListener) {
    obj.addEventListener(evt, fn, false);
Event obj.attachEvent('on' evt,fn);
  }
}

23、原生JavaScript遊標停在文字的後面,文字方塊取得焦點時呼叫
複製程式碼 程式碼如下:

function focusLast(){
  var e = event.srcElement;
  var r =e.createTextRange();
  r.moveStart('character',). length);
  r.collapse(true);
  r.select();
}

24、原生JavaScript檢驗URL連結是否有效
複製程式碼 程式碼如下:

function getUrlState(URL){
  var xmlhttp = new ActiveX ;
  xmlhttp.Open("GET",URL, false);
  try{
    xmlhttp.Send();
  }catch(e){
  }finally result = xmlhttp.responseText;
    if(result){
      if(xmlhttp.Status==200){
         return(false);
      }
    }else{
      return(false);
    }
Ofido
>格式化🎜>樣式


複製程式碼


程式碼如下:  s = s.replace(/([^s])}([^n]*)/g, "$1n}n$2");
  s = s.replace(/([^s]);([^s}])/g, "$1;nt$2");
  return s;
}

26.原生JavaScript壓縮CSS樣式程式碼




複製程式碼


程式碼如下:
程式碼如下: ) {//壓縮程式碼
  s = s.replace(//*(.|n)*?*//g, ""); //刪除註解
  s = s.replace(/s* ([{}:;,])s*/g, "$1");
  s = s.replace(/,[s.#d]*{/g, "{"); //容錯處理
  s = s.replace(/;s*;/g, ";"); //清除連續分號
  s = s.match(/^s*(S (s S )*)s *$/); //去掉首尾空白
  return (s == null) ? "" : s[1];
}

27、原生JavaScript取得目前路徑


複製程式碼 程式碼如下:var currentPageUrl = "";
if (type = .this.href == "undefined") {
    currentPageUrl = document.location.toString().toLowerCase();
}
else {
   currentPageUrl = .else {
  );
}

28、原生JavaScriptIP轉成整數


複製程式碼 程式碼如下
function _ip2int(ip){
    var num = 0;
    ip = ip.split(".");
    ip = ip.split(".");
    ip = ip.split(".");
    num = Number(ip60]) * * 256 Number(ip[1]) * 256 * 256 Number(ip[2]) * 256 Number(ip[3]);
    num = num >>> 0;
    return num;
}

29、原生JavaScript整型解析為IP位址
複製程式碼 程式碼如下:


程式碼如下:




function _int2iP(num){
    var str;
    var tt = new Array();
    tt[0] = (num >>> 24); >    tt[1] = ((num >> 24) >>> 0;
    tt[2] = (num >> 24;    tt[3] = (num >> 24;    str = String(tt[0]) "." String(tt[1]) "." String(tt[2]) "." String(tt[ 3]);    return str;}
30、原生JavaScript實作checkbox全選與全不選
複製程式碼 程式碼如下:


程式碼如下:



程式碼如下:function checkAll() {
  var selectall = document.getElementById("selectall");
  var allbox = document.getElementsByName("allbox");
 eck ( >    for (var i = 0; i       allbox[i].checked = true;
    }
  } else {
 ¢       allbox[i].checked = false;

    }
  }
}


複製程式碼



複製程式碼


程式碼如下:


function isMobile(){
  if (typeof this._isMobile === 'boolean'){
    return this._isMobile;
= this.getScreenWidth();
  var fixViewPortsExperiment = rendererModel.runningExperiments.FixViewport || rendererModel.runningExperiments.fixview.
=== "new");
  if(!fixViewPortsExperiment){
    if(!this.isAppleMobileDevice()){
      screenWidth = screenWidth/window.devicePixeldio; isMobileScreenSize = screenWidth   var isMobileUserAgent = false;
  this._isMobile = isMobileScreenSize && this.isTouchScreen();  return this._isMobile;}  return this._isMobile;}}


複製程式碼

程式碼如下:



複製碼


程式碼如下:


複製程式碼

程式碼如下:
function isAndroidMobileDevice(){ .userAgent.toLowerCase()));}35、原生JavaScript判斷是否Touch屏幕


複製代碼

程式碼如下:
複製程式碼


程式碼如下:

程式碼如下:

function isNewChromeOnAndroid(){

  if(this.isAndroidMobileDevice()){
    var userAgent = navigator.userAgent.toLowerCase();
)){
      var parts = userAgent.split('chrome/');

      var fullVersionString = parts[1].split(" ")[0];
      var versionString = fullVersionString.split('.')[0]


      if(version >= 27){
        return true;
      } 🎜>37、原生JavaScript判斷是否打開視窗複製程式碼
程式碼如下:

function isViewportOpen() {
  return !!document.getElementById('wixMobileViewport');
}

38、原生JavaScriptScriptScript. >
複製程式碼 程式碼如下:
function getInitZoom(){
  if(!this._inZZi){ 🎜>    var screenWidth = Math.min(screen.height, screen.width);
    if(this.isAndroidMobileDevice() && ! ixelRatio;
    }
    this._initZoom = screenWidth /document.body.offsetWidth;
  }
  return this._initZoom;<.>



複製程式碼

程式碼如下:
function getZ5(){function getZoom(){
function getZoom(){  if(this.isAndroidMobileDevice() &width);
  if(this.isAndroidMobileDevice() &width);
  if(this.isAndroidMobileDevice() &width);
  if(this.isAndroidMobileDevice() &width);
 !this.isNewChromeOnAndroid()){
    screenWidth = screenWidth/window.devicePixelRatio;
  }
  var FixViewPortsExperiment =||sExperimentl. 🎜>  var FixViewPortsExperimentRunning = FixViewPortsExperiment && (FixViewPortsExperiment === "New" || FixViewPortsExperiment === "new");
  if(FixViewPortsExperimentRunning){
    return screenWidth / window. th / document .body.offsetWidth;
  }
}

40、原生JavaScript取得行動裝置螢幕寬度


複製程式碼複製程式碼

複製程式碼



複製碼>
程式碼如下:


function getScreenWidth(){
  var smallerSide = Math.min(screen.width, screen.height);
Portl. FixViewport || rendererModel.runningExperiments.fixviewport;
  var fixViewPortsExperimentRunning = fixViewPortsExperiment && (fixViewPortsExperiment.toLowerCase() === "new");      smallerSide = smallerSide/window.devicePixelRatio;
    }
>對應是否為網址複製程式碼
程式碼如下:


function IsURL(strUrl>    if (regular. test(strUrl)) {
        return true;
    }
    else {
    、原生JavaScript根據樣式名稱檢索元素物件


複製程式碼 程式碼如下:

function getElementsByClassName(name) {
    var tags = document.getElementsByTagName('*') || document.all; for i var els = [ ; i         if (tags[i].className) {
             for (var j = 0; j                 if (name == cs[j]) {
tag  }🎜>                    break
            
        }
    }
    return els
}

43、LinJava>複製程式碼


程式碼如下:


String.prototype.startWith = function (s) {
複製程式碼


程式碼如下:

String.prototype.endWith = function (s) {
    var d = this.length - s.length;
    return (d >= 0 && this. d)}45、原生JavaScript返回IE瀏覽器的版本號
複製代碼


代碼如下:

function getIE(){
    if (window.ActiveXObject){
        var v = igator.VuserAgent.match/      var v = igator.useruserAgent.match/  ];        return parseFloat(v.substring(0, v.indexOf(".")))    }    return false

複製程式碼


程式碼如下:


function getPageHeight(>

function getPageHeight(>
function. 、 a = g.body, f = g.documentElement, d = g.compatMode == "BackCompat"      ? a      : g.documentElement; scrollHeight, d.clientHeight);}47、原生JavaScript取得頁面scrollLeft



複製程式碼


複製程式碼

function getPageScrollLeft(){  var a = document;  return a.documentElement.scrollLeft || a.body.scrollft;48、原生JavaScript取得頁面可視寬度


複製程式碼

程式碼如下:  var d = document, a = d.compatMode == "BackCompat"
      ? d.body
   🎜>49、原生JavaScript取得頁面寬度複製程式碼

程式碼如下:



程式碼如下:
  var g = document, a = g.body, f = g.documentElement, d = g.compatMode == "BackCompat"
     >  return Math.max(f.scrollWidth, a.scrollWidth, d.clientWidth);








>複製程式碼
程式碼如下:

function getPageScrollTop(){
  var a = document;
  return a.documentElement.scrollTop || a.body.scrollTop;
}
}
解決offsetX相容性問題
複製程式碼 程式碼如下:

/// 針對 針對 off看到/Y
function getOffset(e){
  var target = e.target, // 當前觸發的目標對象
      eventCoord,
 
  // 計算目前觸發元素到文件的距離  pageCoord = getPageCoord(target);


  // 計算遊標到文件的距離

  eventCoord = {

    X : window.pageXOffset e.clientX,
    Y : window.pagefffffp.
  // 相減取得遊標到第一個定位的父元素的座標
  offsetCoord = {
    X : eventCoord.X - pageCoord.X,

    Y : eventCoord. - pageCoord. - pageCoord.

  };
  return offsetCoord;
}

function getPageCoord(element){
  var coord = { X : 0, Y : 0 };
  // 計算從目前觸發元素到根節點為止,

  // 各級offsetLeft 或offsetTop 值總和

  while (element){
    coord.X = element.offsetLeft;
    coord.Y = element. 🎜>  return coord;
}

62、原生JavaScript常用的正規表示式




複製程式碼



複製程式碼
代碼如下://正整數/^[0-9]*[1-9][0-9]*$/;
//負整數
/^-[0-9]*[1-9][0-9]*$/;
//正浮點數
/^(([0-9] .[0-9] *[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9] )|([0-9]*[1- 9][0-9]*))$/;
//負浮點數
/^(-(([0-9] .[0-9]*[1-9][0- 9]*)|([0-9]*[1-9][0-9]*.[0-9] )|([0-9]*[1-9][0-9]*) ))$/;
//浮點數
/^(-?d )(.d )?$/;
//email位址
/^[w-] (.[w -] )*@[w-] (.[w-] ) $/;
//url位址
/^[a-zA-z] ://(w (-w )*)( .(w (-w )*))*(?S*)?$/;
//年/月/日(年-月-日、年.月.日)
/^(19 |20)dd[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])$ /;
//匹配中文字元
/[u4e00-u9fa5]/;
//匹配帳號是否合法(字母開頭,允許5-10字節,允許字母數字下劃線)
/ ^[a-zA-Z][a-zA-Z0-9_]{4,9}$/;
//符合空白行的正規表示式
/ns*r/;
/ /符合中國郵遞區號
/[1-9]d{5}(?!d)/;
//配對身分證
/d{15}|d{18}/;
//符合國內電話號碼
/(d{3}-|d{4}-)?(d{8}|d{7})?/;
//符合IP位址
/((2[0-4]d|25[0-5]|[01]?dd?).){3}(2[0-4]d|25[0-5]|[01]? dd?)/;
//符合首尾空白字元的正規表示式
/^s*|s*$/;
//符合HTML標記的正規表示式
]*>.*?|;

63、原生JavaScript實作回頂端的通用方法



複製程式碼
程式碼如下:function backTop(btnId) {  var btnvardument.getElementById(btnId);  var b = document.body;
  window.onscroll = set;
  btn.style.display = "none";
  btn.onclick = ftnunction( style.display = "none";
    window.onscroll = null;
    this.timer = setInterval(function() {
   * 0.1);
      b.scrollTop -= Math.ceil((d.scrollTop b.scrollTop) * 0.1);
     , window.onscroll = set);
    },
    10);
  };
  function set() {
  };
  function set() {
) ? 'block': "none"
  }
};
backTop('goTop');

64、原生JavaScript取得URL中GET參數值

64、原生JavaScript取得URL中GET參數值


複製程式碼 程式碼如下:

// 用法:如果地址是test.htm?t1=1&t2=2&t3=3, 那麼能取得:GET["t1"], GET["t2"], GET["t3"]
function get_get(){
  querystr = window.location.href.split("?")
  if(querystr[1]){
    GETs = querystr[1]){
    GETs = querystr[1].split("&" )
    GET =new Array()
    for(i=0;i      tmp_arr = GETs[i].split("=")      GET[key] = tmp_arr[1]
    }
  }
  return querystr[1];
}
  return querystr[1];
}
  return querystr[1];
}複製程式碼

程式碼如下:


function checkall(form, prefix, check, prefi
  var checkall = checkall ? checkall : 'chkall';
  for(var i = 0; i     var e = form.elements[i];
    var e = form.elements[i];
if(e.type=="checkbox"){
      e.checked = form.elements[checkall].checked;
    }
  }
}    }Java }}}>6實作全部取消選擇通用方法


複製程式碼


程式碼如下:

function unchAll(form) {function unchAll(form) {
  for (var i=0;i    var e = form.elements[i];
    if (e.name != 'chkall')    if (e.name != 'chkall')    e.checked=!e.checked;  }}67、原生JavaScript實作開啟一個窗體通用方法







複製程式碼


程式碼如下:


function openWindow(url,windowName,width,height){
    var x = parsewIntth creen.{
    var x = parsewIntth/2.00) (width / 2.0);
    var y = parseInt(screen.height / 2.0) - (height / 2.0);
    var isMSIE= (igator.0);
    var isMSIE= (igator..0);
    var isMSIE= (igator..0);
    var isMSIE= (igator.. Internet Name ); (isMSIE) {
     var p = "resizable=1,location=no,scrollbars=no,width=";
     p = p width;
  p = p height;
     p = p ",left=";     p = p x;     p = p ",top=";     p = p y;        retval = window. open(url, windowName, p);    } else {        var win = window.open(url, "ZyiisPopup", "top=" y ",left=" x "scrollbars=" ZyiisPopup", "top=" y ",left=" x ",scrollbars=" ZyiisPopup", "top=" y ",left=" x "scrollbars="scrollbar" dialog=yes,modal=yes,width=" width ",height=" height ",resizable=no" );
        eval("try { win.resizeTo(width, height); } catch(e); } catch(e) { } ");
        win.focus();
    }
}

68、原生JavaScript.複製程式碼


程式碼如下:


function client(o){
       var b = navigator.AgentAgent.toLoweraseAgent false;
     if (o == 'isOP'){
       t = b.indexOf('opera') > -1;
  🎜>       t = b.indexOf('msie') > -1;
     }
     if (o == 'isFF'){
     if (o == 'isFF'){
     if (o == 'isFF'){         }       return t;}69、原生JavaScript取得單選按鈕的值



程式碼如下:


function get_radio_value(field){
  if(field&&field.length){
  i ){
      if(field[i].checked){
        return field[i].value;
   🎜>  }
}
70、原生JavaScript獲取複選框的值
複製代碼 代碼如下:

function get_checkbox_value(field){
  if(field&&field.length){
    for(var i=0;i        return field[i].value;
      }
    }
🎜 >(71~80)驗證篇這篇文章主要是10個比較常用表單驗證功能,包括了郵箱、危險字元、驗證長度、驗證網址、驗證小數、整數、浮點數等常用的驗證,有了這些程式碼片段,平常的表單驗證也可以不需要jquery的驗證外掛了,希望可以幫到大家。 。 。
71、原生JavaScript判斷是否為郵箱



複製程式碼

代碼如下:    var re=/^w ((-w )|(.w ))*@[A-Za-z0-9] ((.|-)[A-Za-z0-9 ] )*.[A-Za-z0-9] $/;  if (re.test(str) != true) {    return false;  }else{  return false;  }else{
  return false;
  }else{
 
  }
}

72、原生JavaScript判斷是否有列表中的危險字符



複製代碼
程式碼如下:function isValidReg(chars){  var re=/|[|]|{|}|『|』|※|○|●|◎ |§|△|▲|☆|★|◇|◆|□|▼|㊣|﹋|⊕|⊙|〒|ㄅ|ㄆ|ㄇ|ㄈ|ㄉ|ㄊ|ㄋ|ㄌ|ㄍ|ㄎ|ㄎ| |ㄐ|ㄑ|ㄒ|ㄓ|ㄔ|ㄕ|ㄖ|ㄗ|ㄘ|ㄙ|ㄚ|ㄛ|ㄜ|ㄝ|ㄞ|ㄟ|ㄢ|ㄣ|ㄤ|ㄩ|ㄦㄧ| |▄|▆|*|@|#|^|\/;  if (re.test( chars) == true) {
    return false;
  }else{
  return false;
  }else{
 
  }
}

73、原生JavaScript判斷字符串是否大於規定的長度


複製代碼 程式碼如下:function isValidLength(chars, len) {
  if (chars.length }

74、原生JavaScript判斷字符串是為網址不區分大小寫



複製代碼

程式碼如下:function isValidURL( chars ) {  var re=/^([hH][tT]{2}[pP]://|[hH][tT]{ 2}[pP][sS]://)(S .S )$/;  if (!isNULL(chars)) {    chars = jsTrim(chars);
    chars = jsTrim(chars);
    if (chars.match (re) == null)
      return false;
    else
      return true;
  }
    return true;
  }
    return true;
  }
 是否為小數



複製程式碼
程式碼如下:function isValidDecimal (isValidDecimal> var re=/^d*.?d{1,2}$/;  if (chars.match(re) == null)
    return false;
  else
   return false;
  else
    return true;
}

76、原生JavaScript判斷字串是否為整數


複製程式碼複製程式碼
程式碼如下

function isNumber( chars ) {
  var re=/^d*$/;
  if (chars.match(re) == null)
  else
    return true;
}
77、原生JavaScript判斷字串是否為浮點數

複製程式碼複製程式碼
複製碼> 程式碼如下:

function isFloat( str ) {
  for(i=0;i     if ((str.charAt(i)"9")&& str.charAt(i) != '.'){
      return false;
     }
  }
  return true🎠
78、原生JavaScript判斷字元是否為A-Za-z英文字母


複製程式碼 代碼如下:
function isLetters( str ){
  var re=/^[A-Za-z] $/;
  if (str.match(re) == null)
   if (str.match(re) == null)
   return false ;
  else
    return true;
}
79、原生JavaScript判斷字串是否郵遞區號

程式碼如下:function isValidPost( chars ) {  var re=/^d{6}$/;
  if (chars.match(re; ) == null)
    return false;
  else
    return true;
}

80、原生JavaScript> 🎜>
複製程式碼

程式碼如下:
81、JavaScriptScript用正規提取程式碼中所有表達式網址




複製程式碼

程式碼如下:

var aa = document. /(url(|src=|href=)["']*([^"'()[] ] )["')]*|(http://[w-.] [^"' ()[] ] )/ig).join("rn").replace(/^(src=|href=|url()["']*|["'>) ]*$/igm, "");alert(aa);82、原生JavaScript用正規表示式清除相同的陣列(低效率)
複製程式碼

程式碼如下:

Array.prototype.unique=function(){  return this.reverse().join(",").match (/([^,] )(?!.*1)/ig).reverse();}83、原生JavaScript用正規表示式清除相同的陣列(高效率)

複製程式碼

程式碼如下:

String.prototype.unique=function() var x=this.split(/[rn] /);  var y='';  for(var i=0;i    if(!new RegExp ("^" x[i].replace(/([^w])/ig,"\$1") "$","igm").test(y)){      y =x[i] "rn"    }  }
  return y
}

84、原生JavaScript用正規表示式按字母排序,對每行進行數組排序





複製程式碼

程式碼如下:

function SetSort(){  var text=K1.value. [rn]/).sort().join("rn");//順序  var test=K1.value.split(/[rn]/).sort().reverse().join(" rn");//反序  K1.value=K1.value!=text?text:test;}85、原生JavaScript字串反序



複製程式碼

程式碼如下:

function IsReverse(text){  return text.split(''). reverse().join('');}86、原生JavaScript用正規表示式清除html程式碼中的腳本

複製程式碼

程式碼如下:

function clear_script(){  K1.value=K1.value.replace(/[sS] *?|s on[a-zA-Z]{3,16}s?=s?"[sS]*?"|s on[a-zA-Z]{3,16}s? =s?'[sS]*?'|s on[a-zA-Z]{3,16}s?=[^ >] /ig,"");}
87、原生JavaScript動態執行JavaScript腳本
複製程式碼 程式碼如下:
程式碼如下:  try{
    eval(K1.value);
  }catch(e){
    alert(e.message);
 🎜>88、原生JavaScript動態執行VBScript腳本



複製程式碼
程式碼如下:  try{    var script=document.getElementById("K1").value;    if(script.trim()=="")return; On Error Resume Next n' script 'n If Err.Number0 Then n MsgBox "請輸入正確的VBScript腳本!",48,"腳本錯誤!" n End If',"vbscript")
  }catch (e){
    alert(e.message);
  }
}

89、原生JavaScript實作金額大寫轉換函數






複製程式碼 程式碼如下:

function transform(tranvalue) {
  try {
    var i = 1;
    var dw2 = new Array("", "萬大單位
    var dw1 = new Array("拾取", "佰", "仟"); //小單位
    var dw = new Array("零", "壹", "叁", "叁", "叁" , "肆", "伍", "陸", "柒", "捌", "玖"); //整數部分用
    //以下是小寫轉換成大寫顯示在合計大寫的文本框中
    //分離整數與小數
    var source = splits(tranvalue);
    var num = source[0];
    var k1 = 0; //計小單位
    var k2 = 0; //計大單位
    var sum = 0;
 [0].length; //整數的長度
    for (i = 1; i       var n = source[0].charAt(len - i); //取得某某某某某某某某某某某某某某某某某某某某某某某某的某某某某某某某某某某某項個位數上的數字
      var bn = 0;
      if (len - i - 1 >= 0) {
        bn = 0].取得某位數前一位上的數字
      }
      sum = sum Number(n);
      if (sum != 0) {
      if (sum != 0) {
     concat(str); //取得該數字對應的大寫數字,並插入str字串的前面
        if (n == '0') sum = 0;
      }
   -   i - 1 >= 0) { //在數位範圍內
        if (k1 != 3) { //加小單位
         1] .concat(str);
          }
          k1 ;
     ;
          var temp = str.charAt(0) ;
          if (temp == "萬" || temp == "億") //若大單位前沒有數字則捨去大單位
         str = str. );
          str = dw2[k2].concat(str);
             if (k1 == 3) //小單位到千則大單位進一
      {
        k2 ;
      }
     if (dig != "") {
      var n = dig.charAt(0);
      if (n != 0) {
        strdig = dw[ var n = dig.charAt(1);
      if (n != 0) {
        strdig =  🎜>    str = "元" strdig;
  } catch(e) {
    return "0元";
  }
  return str;
}function splits(tranvalue) {
  var value = new Array('', '');
  temp = tranvalue.split(".");
  for (var i =   for (var i = 0; i     value[i] = temp[i];
  }
  return value;
}
90、JavaScript>90、Java式大收集




複製程式碼


程式碼如下:

中国語の文字に一致する正規表現: [u4e00-u9fa5]
全角文字 (漢字を含む) の一致: [^x00-xff]
空白行に一致する正規表現: [s| ]*r
HTML タグに一致する正規表現: <(.*)>.*gt;|<(.*) />
先頭および末尾のスペースに一致する正規表現式: (^s*)|(s*$)
IP アドレスに一致する正規表現:/(d).(d).(d).(d)/g
一致する電子メール アドレス 正規表現: w ([- .]w )*@w ([-.]w )*.w ([-.]w )*
URL に一致する正規表現: http://(/ [w-] .) [w -] (/[w- ./?%&=]*)?
SQL ステートメント: ^(select|drop|delete|create|update|insert).*$
非負の整数: ^d $
正の整数: ^[0-9]*[1-9][0-9]*$
非正の整数: ^((-d )|(0 ) )$
負整数: ^-[0-9]*[1-9][0-9]*$
整数: ^-?d $
非負の浮動小数点数: ^d (. d )?$
正の浮動小数点数: ^((0-9) .[0-9]*[1-9][0-9]*)|([0-9]*[1-9] [0- 9]*.[0-9] )|([0-9]*[1-9][0-9]*))$
非正の浮動小数点数: ^((-d .d ) ?)|(0 (.0 )?))$
英語の文字列: ^[A-Za-z] $
英語の大文字の文字列: ^[A-Z] $
英語の小文字の文字列: ^ [a-z ] $
英字と数字列:^[A-Za-z0-9] $
下線付き英数字列:^w $
メールアドレス:^[w-] (. [w-] )*@[w-] (.[w-] ) $
URL: ^[a-zA-Z] ://(w (-w )*)(.(w (-w) )*))*(?s*)?$ または: ^http://[A-Za-z0-9] .[A-Za-z0-9] [/=?%-&_~`@[] ': !]*([^<>""])*$
郵便番号: ^[1-9]d{5}$
電話番号: ^(((d{2,3 }))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6,7}(-d{1,4 })?$
携帯電話番号: ^(((d{2,3}))|(d{3}-))?13d{9}$
全角文字(漢字を含む) :^x00-xff
先頭および末尾のスペースと一致します: (^s*)|(s*$)
HTML タグと一致します: <(.*)>.*|< (. *) />
は空の行に一致します。 [s| ]*r
情報内のネットワーク リンクを抽出します: (h|H)(r|R)(e|E)(f|F) *= *('|")?(w|\| /|.) ('|"| *|>)?
メッセージ内の電子メール アドレスを抽出します: w ([- .]w )*@w ([-.]w )*.w ([- . ]w )*
メッセージ内の画像リンクを抽出します: (s|S)(r|R)(c|C) *= *('|")?(w|\|/|) ( '| "| *|>)?
情報内の IP アドレスを抽出します: (d).(d).(d).(d)
情報内の中国の携帯電話番号を抽出します: ( 86)*0* 13d{9}
情報内の中国の固定電話番号を抽出します: ((d{3,4})|d{3,4}-|s)?d{8}
情報内の中国の電話番号を抽出します。番号 (携帯電話と固定電話を含む): ((d{3,4})|d{3,4}-|s)?d{7,14}
中国の郵便番号を抽出します。情報内のコード: [1- 9]{1}(d ){5}
情報内の浮動小数点数 (つまり、10 進数) を抽出します: (-?d*).?d
情報内の任意の数値を抽出します情報: (-?d*) (.d )?
IP: (d ).(d ).(d ).(d )
電話市外局番: ^0d{2,3}$
Tencent QQ 番号: ^[1- 9]*[1-9][0-9]*$
アカウント番号 (文字で始まり、5 ~ 16 バイト、英数字のアンダースコアを使用可能): ^[a -zA-Z][a-zA-Z0 -9_]{4,15}$

中国語、英語、数字、下線: ^[u4e00-u9fa5_a-zA-Z0-9] $
91. ネイティブ JavaScript はフォーム変更イベントのサイズ変更操作を実装します (すべてのブラウザーと互換性があります)
コードをコピー コードは次のとおりです:

(function() {
var fn = function(){
var w = document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth
, r = 1255
,b = Element.extend(document .body)
,classname = b.className
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn