Mozilla waxay u beddeshay adeegsiga matoorka hadalka caadiga ah ee Chromium

SpiderMonkey matoorka JavaScript ee loo isticmaalo Firefox turjumay in la isticmaalo dhaqangelinta cusboonaysiinta ee tibaaxaha caadiga ah ee ku salaysan xeerka hadda jira Irregexp ka V8 JavaScript engine ee loo isticmaalo daalacashada ku salaysan mashruuca Chromium. Hirgelinta cusub ee RegExp waxaa lagu bixin doonaa Firefox 78, oo loo qorsheeyay Juun 30, waxayna keeni doontaa dhammaan walxaha ECMAScript ee maqan ee la xidhiidha tibaaxaha caadiga ah browserka.

Waxaa la xusay in matoorka RegExp ee SpiderMonkey loogu talagalay sidii qayb gaar ah, taas oo ka dhigaysa mid madaxbannaan oo ku habboon beddelka iyada oo aan loo baahnayn in isbeddel weyn lagu sameeyo saldhigga koodhka. Modularity-ka ayaa suurtogal ka dhigay 2014 in lagu beddelo mishiinka YARR RegExp ee markii hore lagu isticmaalay Firefox fargeeto ah mishiinka Irregexp ee V8. Irregexp waxa ay ku xidhan tahay V8 API, waxa ay ku xidhan tahay qashin ururiyaha, oo waxa ay isticmaashaa qaab V8 u gaar ah xadhigga iyo qaabka shayga. Habka la qabsiga SpiderMonkey API gudaha ee 2014, mishiinka Irregexp qayb ahaan dib ayaa loo qoray, iyo isbeddellada soo baxaya, sida calanka '\u', halka ay suurtagal tahay. wareejin fargeeto ay maamusho Mozilla.

Nasiib darro, ilaalinta fargeeto isku xidhan waa adag tahay oo khayraadku waa xoog badan yahay. Markii ay soo baxeen astaamo cusub oo la xidhiidha tibaaxaha caadiga ah ee heerka ECMAScript 2018, horumarinta Mozilla waxay ka fikireen sidii ay ugu fududayn lahaayeen ka haajiridda isbeddelada Irregexp. Si looga baxo, fikradda duubista ayaa la soo jeediyay, taas oo u oggolaanaysa in la isticmaalo mishiinka Irregexp ee SpiderMonkey ku dhawaad ​​​​isbeddelka (isbeddellada waxaa lagu yareynayaa kaliya beddelka tooska ah ee "#include" blocks).

Mozilla waxay u beddeshay adeegsiga matoorka hadalka caadiga ah ee Chromium

Qaab-dhismeedku wuxuu bixiyaa Irregexp oo leh awoodaha gaarka ah ee V8 ee lagama maarmaanka u ah, oo ay ku jiraan maaraynta xusuusta iyo shaqooyinka abuurista koodhka, iyo sidoo kale qaab-dhismeedka xogta asalka ah ee lagu fuliyo iyadoo la adeegsanayo matoorada maaraynta xusuusta, koodhka koodhka, iyo qaabdhismeedka SpiderMonkey.

Cusbooneysiinta mishiinka RegExp waxay u oggolaan doontaa Firefox inay taageerto sifooyin ay ka mid yihiin qabashada magacaaban, ka baxsashada dabeecadda Unicode, calanka dotAll, iyo qaabka Lookbehind:

  • Kooxaha la magacaabay kuu ogolaato inaad ku xidho qaybo xadhig ah oo ku haboon odhaah joogto ah oo wata magacyo gaar ah halkii aad ka isticmaali lahayd tirooyinka taxan ee taraqa (tusaale ahaan, halkii aad ka ahaan lahayd "/(\d{4})"-(\d{2})-(\d{2})-(\d{ 4})/" waxaad qeexi kartaa"/(? \d{2})-(? \d{2})-(? \d{1})/" oo sanadka ku gali natiijo[XNUMX], balse loo maro natiijooyinka.groups.year).
  • Fasallada Xuruufaha Unicode waxay ku daraan dhismooyinka \p{...} iyo \P{...}, tusaale ahaan, \p{Number} wuxuu qeexayaa dhammaan jilayaasha suurtagalka ah ee muujinaya nambarada (oo ay ku jiraan jilayaasha sida ①), \ p {Alphabetic} - xarfaha (ay ku jiraan hieroglyphs), \p{Math} - calaamadaha xisaabta, iwm.
  • Calanka dhibicDhammaan waxay sababtaa "" maaskaro dab. oo ay ku jiraan jilayaasha quudinta khadka.
  • Qaabka Gadaal eeg Waxay kuu ogolaanaysaa inaad si joogto ah u go'aamiso in hal qaab uu kan kale ka horreeyo (tusaale ahaan, u dhigma qaddarka doollarka iyada oo aan la qabsan calaamadda dollarka).

Mashruucan ayaa waxaa ka qayb qaatay horumarinta V8, kuwaas oo dhankooda ka shaqeeyay in ay yareeyaan ku tiirsanaanta Irregexp ee V8, waxayna dhaqaajiyeen qaar ka mid ah sifooyinka aan la hirgelin karin iyadoo la adeegsanayo SpiderMonkey si ay u joojiyaan "#ifdef" blocks. Iskaashigu wuxuu noqday mid labada dhinacba faa'iido u leh. Dhankooda, horumarinta Mozilla waxay u gudbiyeen isbedelada Irregexp taas oo meesha ka saaraysa qaar iswaafaq la'aan oo leh shuruudaha jaangooyada JavaScript iyo hagaajin tayada code. Sidoo kale, inta lagu guda jiro tijaabada jahawareerka ee Firefox, khaladaad aan hore loo arag oo ku jiray koodhka Irregexp ee sababay shilalka ayaa la aqoonsaday oo la tirtiray.

Source: opennet.ru

Add a comment