java web js加版本号_[Java教程]js 比较版本号(一)
[Java教程]js 比較版本號(hào)(一)
0 2016-07-03 15:00:13
最近群了有人問如何比較版本號(hào),我好奇的試了一下。
比較版本號(hào),怎么辦?懶人的方法是借鑒,先查網(wǎng)上的資料,看看有木有直接的幫過來的。而且直接便捷的好像在茫茫"文海"中,而且發(fā)現(xiàn)大多數(shù)是Java的,于是這里自己試了下用js 來比較,并試圖找到簡(jiǎn)潔的比較方法。
比較版本號(hào)就是對(duì)字符串進(jìn)行比較,這里結(jié)合正則表達(dá)式處理版本號(hào)。
首先,來比較常見的版本號(hào) 如 "2.2.3","2.3.0":
js版本號(hào)比較--之版本1.0(ps:由于后面進(jìn)行改進(jìn),因此對(duì)每次比較加個(gè)"版本號(hào)" )//假定字符串的每節(jié)數(shù)都在5位以下function toNum(a){var a=a.toString();//也可以這樣寫 var c=a.split(/\./);var c=a.split('.'); var num_place=["","0","00","000","0000"],r=num_place.reverse(); for (var i=0;i_b) console.log("版本號(hào)"+a+"是新版本!"); if(_a<_b console.log a="2.2.3" cpr_version>
在chrome 控制臺(tái)中執(zhí)行結(jié)果:
多來幾組:
有的版本號(hào)可能帶有字母,如何比較呢?如 ?"v2.2.3","v2.3.0", ? 不用著急,用正則表達(dá)式,改動(dòng)一點(diǎn)點(diǎn)即可:
js版本號(hào)比較--之版本1.1//假定字符串的每節(jié)數(shù)都在5位以下
function toNum(a){var a=a.toString();//這里變了var c=a.split(/\D/); var num_place=["","0","00","000","0000"],r=num_place.reverse(); for (var i=0;i_b) console.log("版本號(hào)"+a+"是新版本!"); if(_a<_b console.log a="v2.2.3" cpr_version>
執(zhí)行結(jié)果:
到這里,js比較版本號(hào)基本結(jié)束。在網(wǎng)上看到居然有類似這種"2.3.0a","2.3.0b"版本號(hào),顯然后一種版本新一些。如果有,該如何比較呢?
思路不變,上面已經(jīng)處里好了數(shù)字的,接下來只需比較字母的順序:
js版本號(hào)比較之--版本1.2//假定字符串的每節(jié)數(shù)都在5位以下//去除數(shù)組空值||空格值if (!Array.prototype.trim){ Array.prototype.trim=function(){ var arr=[]; this.forEach(function(e){ if(e.match(/\S+/)) arr.push(e); }) return arr; } }//提取數(shù)字部分function toNum(a){ var a=a.toString();var c=a.split(/\D/).trim(); var num_place=["","0","00","000","0000"],r=num_place.reverse(); for (var i=0;i_b1) console.log("版本號(hào)"+a+"是新版本!"); if(_a1<_b1 console.log if _a2="_a2.charCodeAt(0).toString(16);" _b2="_b2.charCodeAt(0).toString(16);">_b2) console.log("版本號(hào)"+a+"是新版本!"); if(_a2<_b2 console.log if a="2.3.0a">
在chrome 控制臺(tái)中執(zhí)行結(jié)果:
至此,帶字符升級(jí)模式的版本號(hào)也比較完了。當(dāng)然,上面的腳本只能比較帶一個(gè)字母字符的,帶多個(gè)字母字符的"版本號(hào)"不常見,在此略去。上面也只是比較
了一對(duì),如果有多組版本號(hào),改如何處理呢?請(qǐng)看筆者文章:js比較版本號(hào)(二)
本文網(wǎng)址:http://www.shaoqun.com/a/235615.html
*特別聲明:以上內(nèi)容來自于網(wǎng)絡(luò)收集,著作權(quán)屬原作者所有,如有侵權(quán),請(qǐng)聯(lián)系我們:admin@shaoqun.com。
JS
0
總結(jié)
以上是生活随笔為你收集整理的java web js加版本号_[Java教程]js 比较版本号(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 夏普linux掌上电脑,夏普展示Ubun
- 下一篇: chackbox的值 php获取_最详细