Cyfeiriadur Erthygl
Roeddech chi'n meddwl bod y wefan yn iawn a bod y cod JS mor sefydlog â hen gi, ond cyn gynted ag y newidioch chi fersiwn y porwr symudol, aeth y dudalen "ar streic"?
Y peth mwyaf gwarthus yw: mae'r cyfrifiadur yn rhedeg yn normal,AndroidOnd mae'r ffôn yn eich anwybyddu'n llwyr.
Nid jôc yw hyn, mae'n broblem porwr sydd wedi bod yn digwydd yn dawel.
Gwraidd y broblem: Nid eich bod wedi'i ysgrifennu'n anghywir, ond bod yr amseroedd wedi eich gadael chi

Mewn gwirionedd, pan fydd y rhan fwyaf o ddatblygwyr yn gweld y ffenomen hon, eu hymateb cyntaf yw: Oes nam yng nghystrawen JS? Onid yw'r DOM wedi'i lwytho? Neu a yw'r caniatâd wedi'i rwystro?
Y canlyniad? Dim ohonyn nhw. Y gwir droseddwr oedd yr ysgrifen hynafol honno:
<script language="javascript">
Roedd y llinell god hon yn boblogaidd 20 mlynedd yn ôldiderfyn, y gellir ei weld ym mhob tiwtorial.
Ond i mewn Fersiwn 119 o ChromiumAr ôl hynny, ffarweliodd Google â'r "gramadeg hynafol" hon: cyn belled ag y gwelwch chi language Priodoleddau, bydd y porwr yn eu hanwybyddu'n ddetholus ac ni fydd hyd yn oed yn trafferthu eu hesbonio.
Am resymau cydnawsedd, mae Chrome ar gyfrifiadur personol yn dal i "ofalu amdano dros dro"; ond Chrome ar ffôn symudol Android yw'r "raglen flaenllaw" ac fe wnaethant alluogi'r strategaeth lanhau hon ar unwaith.
Felly ymddangosodd:Mae'r cyfrifiadur yn gweithio'n iawn, ond nid yw'r ffôn symudol yn gweithioY broblem.
Pam wnaeth Android gymryd camau gweithredu yn gyntaf?
Efallai y bydd rhai pobl yn gofyn: Pam mae Android Chrome yn cael ei lansio gyntaf?
Mae'n syml iawn, oherwydd bod cyflymder uwchraddio'r derfynell symudol yn gyflymach, ac mae Google yn gwthio gwybodaeth mor gyflym ag anfon amlenni coch.
在 2023 年 10 31 月 日Mae fersiwn Android Chrome 119 wedi'i gwthio'n llawn trwy Google Play.
Er bod y fersiwn bwrdd gwaith hefyd yn defnyddio'r cnewyllyn Chromium, mae'n arferol "cadw llaw" i osgoi ffrwydro nifer fawr o systemau corfforaethol mewnol yn sydyn.
Felly, os ydych chi'n dal i ddefnyddio'r ymadrodd "language=javascript", ar ffonau Android mae'n cyfateb i ysgrifennu cod tryloyw, y mae'r porwr yn ei anwybyddu'n uniongyrchol.
Datrysiad: Gwnewch y gwaith mewn tair eiliad
Yn ffodus, mae'r ateb i'r broblem hon yn syml iawn. Dim ond disodli'r llinell hon:
<script>
Neu ychydig yn fwy ffurfiol:
<script type="text/javascript">
Dim ond ychydig eiliadau y mae'n eu cymryd i'w addasu, a bydd Android Chrome yn ei weithredu ar unwaith.
Cofiwch, ar ôl y diwygiadGorfodi adnewyddu storfaFel arall, mae'n bosibl bod y porwr yn dal i ddarllen yr hen ffeil. Mae'r dull hefyd yn syml:
- Cyfrifiadur: Ctrl + F5
- Ffôn: Gosodiadau → Preifatrwydd → Clirio'r Storfa
Ar ôl ei adnewyddu, caiff y cod ei adfywio mewn eiliadau a bydd y dudalen yn dechrau rhedeg eto.
Mae hwn mewn gwirionedd yn "ddiddymiad"
Yn y pen draw, nid problem JS ei hun yw'r broblem y tro hwn, ondOes cod etifeddiaeth blaen-ben.
Mae'r hyn sydd angen i weithgynhyrchwyr porwyr ei wneud yn glir iawn: glanhau'r cystrawen sydd wedi dyddio'n raddol a gorfodi datblygwyr i ddiweddaru.
Mae fel priffordd: roedd caniatâd i feiciau tair olwyn a thractorau redeg ochr yn ochr o'r blaen, ond nawr am resymau diogelwch mae'n rhaid eu gyrru allan. language="javascript" Ni ddylai'r tractor hwnnw fod wedi bod ar y lôn gyflym.
Beth ddylai datblygwyr roi sylw iddo?
Mae'r digwyddiad hwn yn atgoffa ni'n realistig iawn:
Mae safonau codio yn wirioneddol bwysig Efallai y bydd y cod rydych chi'n meddwl ei fod "yn gweithio" yn rhoi'r gorau i weithio mewn fersiwn benodol.
Rhaid i'r amgylchedd prawf gadw i fyny â'r cyflymder Peidiwch â chlicio a chyhoeddi yn Chrome ar eich cyfrifiadur yn unig. Rhaid i chi ei wirio ar ddyfeisiau symudol a gwahanol fersiynau o borwyr.
Dilynwch logiau diweddaru porwr Bob tro y caiff Chromium ei uwchraddio, mae yna lawer o "Dirdynnu a Dileu". Nid addurniadau yw'r rhain, ond byddant yn lladd eich busnes yn fawr.
Casgliad: Y tu ôl i linell o god mae esblygiad technolegol
Mae llawer o bobl yn cwyno bod Google yn "anfoesol," ond o safbwynt uwch, mae hwn mewn gwirionedd yn broses anochel sy'n gyrru ecosystem y We gyfan ymlaen.
Dileu hen briodoleddau a gorfodi datblygwyr i ddilyn safonau yw ailadrodd gwareiddiad technolegol.
Os byddwn yn parhau i fod yn gydnaws â phob cystrawen hen ffasiwn, bydd y pen blaen yn hwyr neu'n hwyrach yn dod yn bot o gymysgedd adfeiliedig.
Felly, pan fyddwn yn atgyweirio'r pwll bach hwn, rydym mewn gwirionedd yn cymryd rhan mewn "mudiad glanhau gwareiddiad technolegol".
Yn ystod y blynyddoedd nesaf, bydd mwy a mwy o beryglon tebyg, a'r unig wrthwenwyn ywCadwch i fyny â'r oes a chofleidio safonau.
Crynodeb terfynol
- Gall cyfrifiaduron ei redeg, ond ni all Android, oherwydd
<script language="javascript">Wedi'i ddirymu. - 从 Chromium 119 Mae Android Chrome yn arwain wrth hepgor
languagePriodoledd<script>块。 - Yr ateb yw: defnyddio
<script>或<script type="text/javascript">. - Ar ôl addasu, adnewyddwch y storfa a bydd y broblem yn cael ei hadfer.
- Dylai datblygwyr bob amser roi sylw i ddiweddariadau porwr a datblygu'r arfer o ysgrifennu cod mewn modd safonol.
Felly, y tro nesaf y byddwch chi'n dod ar draws nam rhyfedd lle mae'r cyfrifiadur yn gweithio'n iawn ond nad yw'r ffôn yn gweithio, efallai y byddwch chi hefyd yn meddwl am hyn: Oes "rhelic o'r ganrif ddiwethaf" wedi'i guddio yn eich cod?
Blog Chen Weiliang Gobeithio ( https://www.chenweiliang.com/ ) wedi'i rannu "Pam mae cod JS yn methu yn Android Chrome? Datgelir y rheswm dros beidio â gweithredu ac mae ateb un clic ar gael! ", a allai fod o gymorth i chi.
Mae croeso i chi rannu'r ddolen erthygl hon: https://www.chenweiliang.com/cwl-33236.html
