Heim >Web-Frontend >js-Tutorial >Allgemeiner Javascript-Code, um festzustellen, ob die Versionsnummer zwischen den Versionsbereichen liegt_Javascript-Kenntnisse
Es wird im Allgemeinen verwendet, um festzustellen, ob die Versionsnummer zwischen den beiden liegt. Es kann auch verwendet werden, um festzustellen, ob sie größer als eine bestimmte Versionsnummer ist. Wenn sie kleiner als eine bestimmte Versionsnummer ist, kann sie negiert werden 🎜>
PS: Es ist darauf zu achten, dass die Versionsangaben konsistent sind, z. B. sind es alle n-stellige Versionsnummern, getrennt durch .
var APP = {}; //判断指定版本是否在版本范围之间,需确保版本规范一致;比如 (..,..,..) APP.betweenVersion = function(curr,start,end,separator){ if(curr == start || curr == end){ return true; } var separator = separator || '.'; var curr = curr.split(separator); var start = start.split(separator); var end = end.split(separator); var gtStart = false; var ltEnd = false; gtStart = APP.gtTargetVersion( APP.compareVersionEle(curr,start) ); if(!gtStart){ return false; } return !APP.gtTargetVersion( APP.compareVersionEle(curr,end) ); }; APP.compareVersionEle = function(curr,target){ var len = curr.length; var temp = []; var left,right; for(var i=;i<len;i++){ left = +curr[i]; right = +target[i]; if(left == right){ temp.push(); }else if(left > right){ temp.push(); }else{ temp.push(-); } } return temp; }; APP.gtTargetVersion = function(arr){ var res = true; var curr,next; for(var i=,len=arr.length;i<len;i++){ curr = arr[i]; next = arr[i+]; if( curr>next ){ if(curr == ){ res = false; break; } if(curr == ){ res = true; break; } }else if(curr == next){ if(curr == -){ res = false; break; } if(curr == ){ res = true; break; } }else{ if(curr == -){ res = false; break; } if(curr == ){ res = true; break; } } } // console.log(res); return res; } var res = APP.betweenVersion('...','...','...','.'); console.log(res);
Die aktuelle Methode hat zwei Hauptpunkte: Zum einen muss die Schnittversionsnummer in ein numerisches Array umgewandelt werden, zum anderen wird sie beim Vergleich der Größe in einen Vergleich von drei Werten umgewandelt von -1 0 1. Auf diese Weise ist die Versionsnummer unabhängig von der Trennung in mehrere Segmente unterteilt und kann korrekt verglichen werden Lassen Sie mich den Javascript-Code zur Erkennung von Browsertyp und -version mit Ihnen teilen
Methode zur Objekt-/Merkmalserkennung
Diese Methode ist eine allgemeine Methode zur Bestimmung der Funktionen eines Browsers (und nicht des genauen Modells des Browsers). Die meisten JS-Experten halten diesen Ansatz für den am besten geeigneten, da sie glauben, dass auf diese Weise geschriebene Skripte zukunftssicher sind.
//获取IE浏览器的版本号 //返回数值,显示IE的主版本号 function getIEVer() { var ua = navigator.userAgent; //获取用户端信息 var b = ua.indexOf("MSIE "); //检测特殊字符串"MSIE "的位置 if (b < 0) { return 0; } return parseFloat(ua.substring(b + 5, ua.indexOf(";", b))); //截取版本号字符串,并转换为数值 } alert(getIEVer()); //返回数值8(我的IE8)Verwenden Sie diese Methode, wenn Ihnen die Fähigkeiten des Browsers wichtiger sind als seine tatsächliche Identität.
Methode zur Erkennung von Benutzeragentenzeichenfolgen
Die User-Agent-Zeichenfolge bietet eine Fülle von Informationen über den Webbrowser, einschließlich des Namens und der Version des Browsers.
var ua = navigator.userAgent.toLowerCase(); //获取用户端信息 var info = { ie: /msie/.test(ua) && !/opera/.test(ua), //匹配IE浏览器 op: /opera/.test(ua), //匹配Opera浏览器 sa: /version.*safari/.test(ua), //匹配Safari浏览器 ch: /chrome/.test(ua), //匹配Chrome浏览器 ff: /gecko/.test(ua) && !/webkit/.test(ua) //匹配Firefox浏览器 }; (info.ie) && alert("IE浏览器"); (info.op) && alert("Opera浏览器"); (info.sa) && alert("Safari浏览器"); (info.ff) && alert("Firefox浏览器"); (info.ch) && alert("Chrome浏览器");Normalerweise stellen wir fest, ob es sich um IE handelt. Andere Browser müssen im Allgemeinen nur IE und FF einhalten. Dann können wir dies tun:
var isIE = (navigator.appName == "Microsoft Internet Explorer");Die Beurteilung des IE ist weit mehr als die oben beschriebene Methode. Sie können weitere einzigartige Dinge des IE verwenden, wie zum Beispiel: window.ActiveXObject, document.all usw. Normalerweise müssen sie verwendet werden Wenn Sie unterschiedliche Stile schreiben (da das Parsen im IE-Stil auch unterschiedlich ist), müssen Sie die Version beurteilen
//获取IE浏览器的版本号 //返回数值,显示IE的主版本号 function getIEVer() { var ua = navigator.userAgent; //获取用户端信息 var b = ua.indexOf("MSIE "); //检测特殊字符串"MSIE "的位置 if (b < 0) { return 0; } return parseFloat(ua.substring(b + 5, ua.indexOf(";", b))); //截取版本号字符串,并转换为数值 } alert(getIEVer()); //返回数值7Betriebssystem erkennen: