ആർട്ടിക്കിൾ ഡയറക്ടറി
- 1 പ്രശ്നത്തിന്റെ മൂലം: നിങ്ങൾ അത് തെറ്റായി എഴുതി എന്നല്ല, കാലം നിങ്ങളെ കൈവിട്ടു എന്നതാണ്.
- 2 എന്തുകൊണ്ടാണ് ആൻഡ്രോയിഡ് ആദ്യം നടപടിയെടുത്തത്?
- 3 പരിഹാരം: മൂന്ന് സെക്കൻഡിനുള്ളിൽ അത് പൂർത്തിയാക്കുക
- 4 ഇത് യഥാർത്ഥത്തിൽ ഒരു "ലിക്വിഡേഷൻ" ആണ്.
- 5 ഡെവലപ്പർമാർ എന്താണ് ശ്രദ്ധിക്കേണ്ടത്?
- 6 ഉപസംഹാരം: ഒരു കോഡിന്റെ പിന്നിലുള്ളത് സാങ്കേതിക പരിണാമമാണ്.
- 7 അന്തിമ സംഗ്രഹം
വെബ്സൈറ്റ് കുഴപ്പമില്ലെന്നും JS കോഡ് പഴയ നായയെപ്പോലെ സ്ഥിരതയുള്ളതാണെന്നും നിങ്ങൾ കരുതിയോ, പക്ഷേ മൊബൈൽ ബ്രൗസർ പതിപ്പ് മാറ്റിയ ഉടനെ പേജ് "സ്ട്രൈക്ക് ചെയ്തു"?
ഏറ്റവും അരോചകമായ കാര്യം: കമ്പ്യൂട്ടർ സാധാരണപോലെ പ്രവർത്തിക്കുന്നു,Androidപക്ഷേ ഫോൺ നിങ്ങളെ പൂർണ്ണമായും അവഗണിക്കുന്നു.
ഇത് തമാശയല്ല, രഹസ്യമായി സംഭവിച്ചുകൊണ്ടിരിക്കുന്ന ഒരു ബ്രൗസർ പ്രശ്നമാണിത്.
പ്രശ്നത്തിന്റെ മൂലം: നിങ്ങൾ അത് തെറ്റായി എഴുതി എന്നല്ല, കാലം നിങ്ങളെ കൈവിട്ടു എന്നതാണ്.

വാസ്തവത്തിൽ, മിക്ക ഡെവലപ്പർമാരും ഈ പ്രതിഭാസം കാണുമ്പോൾ, അവരുടെ ആദ്യ പ്രതികരണം ഇതായിരിക്കും: JS വാക്യഘടനയിൽ ഒരു ബഗ് ഉണ്ടോ? DOM ലോഡ് ചെയ്തിട്ടില്ലേ? അതോ അനുമതി തടഞ്ഞിട്ടുണ്ടോ?
ഫലമോ? അവരിൽ ആരുമില്ല. യഥാർത്ഥ കുറ്റവാളി ആ പുരാതന എഴുത്താണെന്ന് തെളിഞ്ഞു:
<script language="javascript">
ഈ കോഡ് ലൈൻ 20 വർഷം മുമ്പ് ജനപ്രിയമായിരുന്നുപരിധിയില്ലാത്ത, ഇത് എല്ലാ ട്യൂട്ടോറിയലുകളിലും കാണാൻ കഴിയും.
എന്നാൽ അകത്ത് ക്രോമിയം പതിപ്പ് 119അതിനുശേഷം, ഗൂഗിൾ ഈ "പുരാതന വ്യാകരണത്തോട്" വിട പറഞ്ഞു: നിങ്ങൾ കാണുന്നിടത്തോളം language ആട്രിബ്യൂട്ടുകൾ, ബ്രൗസർ അവയെ തിരഞ്ഞെടുത്ത് അവഗണിക്കും, അവ വിശദീകരിക്കാൻ പോലും മെനക്കെടുകയുമില്ല.
അനുയോജ്യത കാരണങ്ങളാൽ, ഡെസ്ക്ടോപ്പിലെ Chrome ഇപ്പോഴും "താൽക്കാലികമായി അത് പരിപാലിക്കുന്നു"; എന്നാൽ മൊബൈലിലെ Chrome Android "വാൻഗാർഡ്" ആണ്, ഉടൻ തന്നെ ഈ ക്ലീനിംഗ് തന്ത്രം പ്രവർത്തനക്ഷമമാക്കി.
അങ്ങനെ അത് പ്രത്യക്ഷപ്പെട്ടു:കമ്പ്യൂട്ടർ നന്നായി പ്രവർത്തിക്കുന്നു, പക്ഷേ മൊബൈൽ ഫോൺ പ്രവർത്തിക്കുന്നില്ല.പ്രശ്നം.
എന്തുകൊണ്ടാണ് ആൻഡ്രോയിഡ് ആദ്യം നടപടിയെടുത്തത്?
ചിലർ ചോദിച്ചേക്കാം: എന്തുകൊണ്ടാണ് ആൻഡ്രോയിഡ് ക്രോം ആദ്യം ലോഞ്ച് ചെയ്യുന്നത്?
ഇത് വളരെ ലളിതമാണ്, കാരണം മൊബൈൽ ടെർമിനലിന്റെ അപ്ഗ്രേഡ് വേഗത കൂടുതലാണ്, കൂടാതെ ചുവന്ന എൻവലപ്പുകൾ അയയ്ക്കുന്നതുപോലെ വേഗത്തിൽ Google വിവരങ്ങൾ മുന്നോട്ട് കൊണ്ടുപോകുന്നു.
ൽ ജനുവരി 2023 10 31 ദിനം ൽ, ക്രോം 119 ആൻഡ്രോയിഡ് പതിപ്പ് ഗൂഗിൾ പ്ലേയിലൂടെ പൂർണ്ണമായും പ്രചരിച്ചു.
ഡെസ്ക്ടോപ്പ് പതിപ്പിലും ക്രോമിയം കേർണൽ ഉപയോഗിക്കുന്നുണ്ടെങ്കിലും, വലിയ തോതിലുള്ള ആന്തരിക കോർപ്പറേറ്റ് സിസ്റ്റങ്ങൾ പെട്ടെന്ന് പൊട്ടിത്തെറിക്കുന്നത് ഒഴിവാക്കാൻ "ഒരു കൈ സൂക്ഷിക്കുക" എന്നത് പതിവാണ്.
അപ്പോൾ, നിങ്ങൾ ഇപ്പോഴും "" എന്ന വാചകം ഉപയോഗിക്കുന്നുണ്ടെങ്കിൽlanguage=javascript", ആൻഡ്രോയിഡ് ഫോണുകളിൽ ഇത് ഒരു സുതാര്യമായ കോഡ് എഴുതുന്നതിന് തുല്യമാണ്, അത് ബ്രൗസർ നേരിട്ട് അവഗണിക്കും.
പരിഹാരം: മൂന്ന് സെക്കൻഡിനുള്ളിൽ അത് പൂർത്തിയാക്കുക
ഭാഗ്യവശാൽ, ഈ പ്രശ്നത്തിനുള്ള പരിഹാരം അവിശ്വസനീയമാംവിധം ലളിതമാണ്. ഈ വരി മാറ്റിസ്ഥാപിക്കുക:
<script>
അല്ലെങ്കിൽ കുറച്ചുകൂടി ഔപചാരികമായി:
<script type="text/javascript">
ഇത് പരിഷ്കരിക്കാൻ കുറച്ച് നിമിഷങ്ങൾ മാത്രമേ എടുക്കൂ, Android Chrome അത് ഉടൻ തന്നെ നടപ്പിലാക്കും.
ഓർമ്മിക്കുക, പരിഷ്കരണത്തിന് ശേഷംകാഷെ പുതുക്കാൻ നിർബന്ധിക്കുകഅല്ലെങ്കിൽ, ബ്രൗസർ ഇപ്പോഴും പഴയ ഫയൽ വായിക്കുന്നുണ്ടാകാം. രീതിയും ലളിതമാണ്:
- കമ്പ്യൂട്ടർ: Ctrl + F5
- ഫോൺ: ക്രമീകരണങ്ങൾ → സ്വകാര്യത → കാഷെ മായ്ക്കുക
ഒരിക്കൽ പുതുക്കിയാൽ, കോഡ് നിമിഷങ്ങൾക്കുള്ളിൽ പുനരുജ്ജീവിപ്പിക്കുകയും പേജ് വീണ്ടും പ്രവർത്തിക്കാൻ തുടങ്ങുകയും ചെയ്യും.
ഇത് യഥാർത്ഥത്തിൽ ഒരു "ലിക്വിഡേഷൻ" ആണ്.
അന്തിമ വിശകലനത്തിൽ, ഇത്തവണ പ്രശ്നം JS ന്റെ തന്നെ പ്രശ്നമല്ല, മറിച്ച്ഫ്രണ്ട്-എൻഡ് ലെഗസി കോഡിന്റെ യുഗം.
ബ്രൗസർ നിർമ്മാതാക്കൾ ചെയ്യേണ്ടത് വളരെ വ്യക്തമാണ്: കാലഹരണപ്പെട്ട വാക്യഘടന ക്രമേണ വൃത്തിയാക്കി ഡവലപ്പർമാരെ അപ്ഡേറ്റ് ചെയ്യാൻ നിർബന്ധിക്കുക.
അതൊരു ഹൈവേ പോലെയാണ്: മുമ്പ് ട്രൈസൈക്കിളുകളും ട്രാക്ടറുകളും അടുത്തടുത്തായി ഓടാൻ അനുവദിച്ചിരുന്നു, എന്നാൽ ഇപ്പോൾ സുരക്ഷാ കാരണങ്ങളാൽ അവ ഓടിച്ചുകളയേണ്ടി വരുന്നു. language="javascript" ആ ട്രാക്ടർ അതിവേഗ പാതയിൽ വരാൻ പാടില്ലായിരുന്നു.
ഡെവലപ്പർമാർ എന്താണ് ശ്രദ്ധിക്കേണ്ടത്?
ഈ സംഭവം നമുക്ക് വളരെ യാഥാർത്ഥ്യബോധമുള്ള ഒരു ഓർമ്മപ്പെടുത്തലാണ്:
കോഡിംഗ് മാനദണ്ഡങ്ങൾ വളരെ പ്രധാനമാണ് "പ്രവർത്തിക്കുന്നു" എന്ന് നിങ്ങൾ കരുതുന്ന കോഡ് ഒരു പ്രത്യേക പതിപ്പിൽ പ്രവർത്തിക്കുന്നത് നിർത്തിയേക്കാം.
പരീക്ഷണ അന്തരീക്ഷം വേഗതയ്ക്കൊപ്പം നിൽക്കണം. നിങ്ങളുടെ കമ്പ്യൂട്ടറിലെ Chrome-ൽ ക്ലിക്ക് ചെയ്ത് പ്രസിദ്ധീകരിക്കരുത്. മൊബൈൽ ഉപകരണങ്ങളിലും വ്യത്യസ്ത ബ്രൗസറുകളിലും നിങ്ങൾ അത് പരിശോധിക്കേണ്ടതുണ്ട്.
ബ്രൗസർ അപ്ഡേറ്റ് ലോഗുകൾ പിന്തുടരുക ഓരോ തവണ Chromium അപ്ഗ്രേഡ് ചെയ്യുമ്പോഴും, ധാരാളം "അവസാനിപ്പിക്കലും നീക്കംചെയ്യലും" ഉണ്ടാകാറുണ്ട്. ഇവ അലങ്കാരങ്ങളല്ല, പക്ഷേ നിങ്ങളുടെ ബിസിനസ്സിനെ ശരിക്കും ഇല്ലാതാക്കും.
ഉപസംഹാരം: ഒരു കോഡിന്റെ പിന്നിലുള്ളത് സാങ്കേതിക പരിണാമമാണ്.
ഗൂഗിൾ "അധാർമ്മികത" പുലർത്തുന്നുവെന്ന് പലരും പരാതിപ്പെടുന്നു, എന്നാൽ ഉയർന്ന കാഴ്ചപ്പാടിൽ നിന്ന് നോക്കുമ്പോൾ, ഇത് യഥാർത്ഥത്തിൽ മുഴുവൻ വെബ് ആവാസവ്യവസ്ഥയെയും മുന്നോട്ട് നയിക്കുന്ന ഒരു അനിവാര്യമായ പ്രക്രിയയാണ്.
പഴയ ഗുണങ്ങൾ ഇല്ലാതാക്കുകയും ഡെവലപ്പർമാരെ മാനദണ്ഡങ്ങൾ പാലിക്കാൻ നിർബന്ധിക്കുകയും ചെയ്യുന്നത് സാങ്കേതിക നാഗരികതയുടെ ആവർത്തനമാണ്.
കാലഹരണപ്പെട്ട എല്ലാ വാക്യഘടനകളുമായും നമ്മൾ പൊരുത്തപ്പെടുന്നത് തുടർന്നാൽ, മുൻഭാഗം എത്രയും വേഗം അല്ലെങ്കിൽ പിന്നീട് ജീർണിച്ച ഒരു ഹോഡ്ജ്പോഡ്ജിന്റെ കലമായി മാറും.
അതുകൊണ്ട്, ഈ ചെറിയ കുഴി നന്നാക്കുമ്പോൾ, നമ്മൾ യഥാർത്ഥത്തിൽ "സാങ്കേതിക നാഗരികതയുടെ ശുചീകരണ പ്രസ്ഥാനത്തിൽ" പങ്കെടുക്കുകയാണ്.
അടുത്ത കുറച്ച് വർഷങ്ങളിൽ, സമാനമായ കൂടുതൽ അപകടങ്ങൾ ഉണ്ടാകും, അതിനുള്ള ഏക പ്രതിവിധികാലത്തിനനുസരിച്ച് മുന്നേറുക, മാനദണ്ഡങ്ങൾ സ്വീകരിക്കുക.
അന്തിമ സംഗ്രഹം
- കമ്പ്യൂട്ടറുകൾക്ക് ഇത് പ്രവർത്തിപ്പിക്കാൻ കഴിയും, പക്ഷേ ആൻഡ്രോയിഡിന് കഴിയില്ല, കാരണം
<script language="javascript">ഒഴിവാക്കി. - വഴി Chromium 119 ഒഴിവാക്കലിൽ ആൻഡ്രോയിഡ് ക്രോം മുന്നിലാണ്
languageആട്രിബ്യൂട്ട്<script>块。 - പരിഹാരം ഇതാണ്: ഉപയോഗിക്കുക
<script>അല്ലെങ്കിൽ<script type="text/javascript">. - പരിഷ്ക്കരണത്തിന് ശേഷം, കാഷെ പുതുക്കുക, പ്രശ്നം പുനഃസ്ഥാപിക്കപ്പെടും.
- ഡെവലപ്പർമാർ എപ്പോഴും ബ്രൗസർ അപ്ഡേറ്റുകളിൽ ശ്രദ്ധ ചെലുത്തുകയും സ്റ്റാൻഡേർഡ് രീതിയിൽ കോഡ് എഴുതുന്ന ശീലം വികസിപ്പിക്കുകയും വേണം.
അപ്പോൾ, അടുത്ത തവണ കമ്പ്യൂട്ടർ നന്നായി പ്രവർത്തിക്കുന്നുണ്ടെങ്കിലും ഫോൺ പ്രവർത്തിക്കാത്ത ഒരു വിചിത്രമായ ബഗ് നേരിടുമ്പോൾ, നിങ്ങൾ ഇതിനെക്കുറിച്ച് ചിന്തിക്കുന്നത് നന്നായിരിക്കും: നിങ്ങളുടെ കോഡിൽ "കഴിഞ്ഞ നൂറ്റാണ്ടിലെ ഒരു അവശിഷ്ടം" ഒളിഞ്ഞിരിക്കുന്നുണ്ടോ?
ഹോപ്പ് ചെൻ വെയ്ലിയാങ് ബ്ലോഗ് ( https://www.chenweiliang.com/ ) പങ്കിട്ടു "ആൻഡ്രോയിഡ് ക്രോമിൽ JS കോഡ് പരാജയപ്പെടുന്നത് എന്തുകൊണ്ട്? നടപ്പിലാക്കാത്തതിന്റെ കാരണവും ഒറ്റ ക്ലിക്ക് പരിഹാരവും വെളിപ്പെടുത്തിയിരിക്കുന്നു!", ഇത് നിങ്ങൾക്ക് സഹായകരമായേക്കാം.
ഈ ലേഖനത്തിന്റെ ലിങ്ക് പങ്കിടാൻ സ്വാഗതം:https://www.chenweiliang.com/cwl-33236.html
