当前位置: 首页 > Web前端 > vue.js

前端工程必备,语义版本号识字,支持任意位数的比较方式

时间:2023-03-31 15:33:03 vue.js

鍥犱负鏈€杩戝湪鍋氫竴涓狽ode鐩稿叧鐨勯」鐩紝娑夊強鍒扮増鏈彿澶勭悊锛屾牴鎹ぇ灏忓崌绾s澶勭悊鐨勭増鏈彿銆傝€屼笖鍥犱负澶氬姞浜嗕竴浣嶏紝瀵艰嚧绾夸笂鐨刯s鏃犳硶鍗囩骇銆傛墍浠ュ彧鑳介噸鍐欎竴涓敮鎸佷换鎰忎綅鏁扮殑鐗堟湰鍙锋瘮杈冩柟娉曘€傞『渚垮厛鏉ヤ釜璇箟鍖栫殑鐗堟湰鍙疯瘑瀛椼€備负浠€涔堥渶瑕佽涔夌増鏈帶鍒讹紵鍦ㄨ蒋浠剁鐞嗛鍩熸湁涓€涓绉颁负鈥滀緷璧栧湴鐙扁€濈殑姝讳骸璋枫€傜郴缁熻秺澶э紝浣犳坊鍔犵殑濂椾欢瓒婂锛屼綘灏辫秺鏈夊彲鑳芥湁涓€澶╁彂鐜拌嚜宸遍櫡鍏ョ粷鏈涖€傚湪鍏锋湁楂樹緷璧栨€х殑绯荤粺涓婂彂甯冨浠剁殑鏂扮増鏈緢蹇氨浼氬彉鎴愪竴鍦哄櫓姊︺€傚鏋滀緷璧栧お楂橈紝鍙兘浼氶潰涓寸増鏈帶鍒惰閿佸畾鐨勯闄╋紙蹇呴』淇敼姣忎釜渚濊禆鍖呮墠鑳藉畬鎴愬崌绾э級銆傝€屽鏋滀緷璧栬繃浜庢澗鏁o紝鐗堟湰娣蜂贡涔熷皢鏃犳硶閬垮厤锛堝亣璁炬湭鏉ュ吋瀹圭殑鐗堟湰鏁伴噺宸茬粡瓒呰繃鍚堢悊鏁伴噺锛夈€傚綋浣犵殑椤圭洰鍥犱负鐗堟湰渚濊禆鎴栬€呯増鏈贩涔辫€岃閿佷綇杩涘害涓嶅鏄撻潬璋辩殑鏃跺€欙紝灏辨剰鍛崇潃浣犻櫡鍏ヤ簡渚濊禆鍦扮嫳銆傝繖涓棶棰樼殑瑙e喅鏂规涔嬩竴鏄娇鐢ㄤ竴缁勭畝鍗曠殑瑙勫垯鍜屾潯浠舵潵绾︽潫鐗堟湰鍙风殑閰嶇疆鍜屽闀匡紝鍗宠涔夌増鏈彿銆傝涔夌増鏈彿涓€鑸涔夌増鏈彿閫氬父瀹氫箟濡備笅锛歫s浠g爜锛歁ajor_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]]Majorversionnumber.Subversionnumber[.Revisionversionnumber[.Compiledversionnumber]]DelimitationSymbols涓€鑸槸鐢ㄨ繃鐨勩€傜増鏈牸寮忥細涓荤増鏈彿銆傛鐗堟湰鍙枫€備慨璁㈠彿銆侫ddedbackwardcompatiblefunctionality锛屽彲浠ョ悊瑙d负Featureversionrevisionnumber锛坧atch锛夛細褰撲綘鍋氫簡涓€涓猙ackwardcompatibleproblemcorrection鍚庯紝鍙互鐞嗚В涓築ugfixversionpreviousversionnumberandversioncompilationinformationcanbeaddedtothe鈥渕ainversion.minor.revision鈥濅綔涓烘墿灞曞悕銆傚苟涓旂増鏈彿鑷锛屽悓浣嶈嚜澧烇紝鎴栬€呴珮浣嶈嚜澧烇紝濡傦細'1.2.5.1'=>'1.2.5.2','1.2.5.1'=>'1.2.6.1','1.9.9.9'=>'2.0.0.0'銆傛湁鍏虫洿璇︾粏鐨勭増鏈鏄庯紝璇峰弬闃呮澶勮涔夌増鏈?.0.0銆傛瘮杈冩柟娉曞厑璁告垜浠瘮杈冪増鏈彿銆備笅闈㈡槸鎴戜滑椤圭洰涓娇鐢ㄧ殑涓€绉嶆柟娉曪紝鏀寔姣旇緝浠绘剰浣嶆暟锛屾瘮濡?浣嶅拰4浣嶃€?/3浣峂ajor_Version_Number.Minor_Version_Number[.Revision_Number]涓荤増鏈彿.subversion鍙穂.revision鐗堟湰鍙穄//4浣峂ajor_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]]涓荤増鏈彿.subversion鍙穂.revision鐗堟湰[.compileversionnumber]]涔嬫墍浠ユ敮鎸佷换鎰忎綅鏁扮殑姣旇緝锛屾槸鍥犱负鐗堟湰鍙锋槸閫掑鐨勶紝涓嬮潰鐨勬柟娉曚粠宸﹀埌鍙充竴涓€姣旇緝銆俲s浠g爜锛?***鐗堟湰姣旇緝VersionCompare*@param{String}curVersion褰撳墠鐗堟湰*@param{String}supportVersion姣旇緝鐗堟湰*@return{Boolean}false褰撳墠鐗堟湰灏忎簬姣旇緝鐗堟湰returntrue*/constversionCompare=(curVersion,supportVersion)=>{if(!curVersion){杩斿洖false;}濡傛灉(!supportVersion){杩斿洖false;}//鐩哥瓑涔熸槸涓€涓叧閿楠f(curVersion===supportVersion){returntrue;}constcurArr=curVersion.split('.');constsupportArr=supportVersion.split('.');for(leti=0;i+supportArr[i];}}杩斿洖鍋囷紱}锛涗娇鐢ㄨ捣鏉ヤ篃寰堢畝鍗?jscode://3浣嶆瘮杈僾ersionCompare('1.3.3','1.2.5');//trueversionCompare('1.1.3','1.2.5');//falseversionCompare('1.2.5','1.2.5');//true//4浣嶆瘮杈僾ersionCompare('1.2.5.1',鈥嬧€?1.2.5.1');//trueversionCompare('1.2.3.4','1.2.3.5');//閿欒鐨別rsionCompare('1.2.3.6','1.2.3.5');//trueversionCompare('1.3.3.4','1.2.3.5');//true//姣旇緝鍗曞厓涓婂ぇ浜?0鐨勪綅versionCompare('1.2.15.1',鈥嬧€?1.2.5.1');//trueversionCompare('1.2.15.1',鈥嬧€?1.2.16.1');//false杩欓噷闇€瑕佹敞鎰忕殑鏄紝鏍规嵁鎴戣嚜宸辩殑涓氬姟閫昏緫锛屽綋鍓嶇増鏈皬浜庡姣旂増鏈繑鍥瀎alse锛屽綋鍓嶇増鏈瓑浜庡姣旂増鏈繑鍥瀟rue銆傚ぇ瀹跺彲浠ユ牴鎹嚜宸辩殑涓氬姟閫昏緫淇敼浠g爜銆傛渶鍚庯紝濂戒箙娌″啓鎶€鏈枃绔犱簡馃槀鐪熺殑寰堟儹鎰с€備笅涓€绡囧師鍒涙枃绔犲簲璇ユ槸鎴戠殑骞寸粓鎬荤粨銆備粖骞寸殑骞寸粓浼氭瘮寰€骞存櫄銆傚線骞村勾缁堟€荤粨閮芥槸鍦?2鏈堜唤鍐欑殑銆傛病鍔炴硶锛屼粖骞?2鏈堢‘瀹炲緢蹇欙紝鏈€鍚庝竴鏈熻繕娌″畾銆?020骞寸殑骞寸粓鎬荤粨鍐欏湪2021骞?鏈堭煒傘€備笉杩囷紝浣犲彲浠ョ湅鐪嬪線骞寸殑骞寸粓鎬荤粨锛氭垜鐨?019鈥斺€斿嫟濂嬪嫟濂嬶紝鎬濆康鏃犲父锛屽浣曡В蹇ф剚锛屽彧涓鸿嚧瀵岋紵