我正在尝试弄清楚如何检测浏览器的浏览器版本以获得网站支持。我想知道浏览器是否比3.6.1更好,然后浏览器没问题,否则显示错误。
问题是我只能用1位小数来做这个,必须有办法做到这一点。
我试过parseFloat("3.6.28")
,但它只给了我3.6。
我该怎么做:
if(3.5.1 > 3.5.0)
{
//Pass!
}
答案 0 :(得分:1)
如果您正在使用很多版本,那么写一些类似的内容可能是值得的
function Version(str) {
var arr = str.split('.');
this.major = +arr[0] || 0;
this.minor = +arr[1] || 0;
this.revision = +arr[2] || 0; // or whatever you want to call these
this.build = +arr[3] || 0; // just in case
this.toString();
}
Version.prototype.compare = function (anotherVersion) {
if (this.toString() === anotherVersion.toString())
return 0;
if (
this.major > anotherVersion.major ||
this.minor > anotherVersion.minor ||
this.revision > anotherVersion.revision ||
this.build > anotherVersion.build
) {
return 1;
}
return -1;
};
Version.prototype.toString = function () {
this.versionString = this.major + '.' + this.minor + '.' + this.revision;
if (this.build)
this.versionString += '.' + this.build;
return this.versionString;
};
现在
var a = new Version('3.5.1'),
b = new Version('3.5.0');
a.compare(b); // 1 , a is bigger than b
b.compare(a); // -1 , b is smaller than a
a.compare(a); // 0 , a is the same as a
否则只需使用您需要的位