កុំព្យូទ័រការសរសេរកម្មវិធី

JavaScript: មុខងារមុខងារ។ ភាសាសរសេរកម្មវិធី JS

គំនិតមាតិកាថាមវន្តទៅបង្កើតជាបណ្តាញដែលធនធានបានក្លាយជាទម្លាប់។ ទំព័រឋិតិវន្តនិងការរចនាពុម្ពបណ្តាញនៅទីបំផុតបានបញ្ចប់បេសកកម្មរបស់ខ្លួន។

ទោះយ៉ាងណាបណ្ដាញធនធានសម័យទំនើបមិនមានត្រូវបានតំណាងដោយសំណុំនៃទំព័រដែលបានបង្កើតដោយម៉ាស៊ីនបម្រើនេះនិងធ្វើឱ្យកម្មវិធីរុករក (JS + + AJAX) នេះ។

បណ្តាញដែលមានមូលដ្ឋានឃ្លាំងនៅពេលនៃការមកដល់នៃភ្ញៀវទេសចរនេះអាចត្រូវបានប្តីប្រពន្ធមួយនៃចំណងជើងមួយសម្រាប់កំណត់ត្រាអត្ថបទមួយចំនួននៅក្នុង«ក្បាល», ជាបន្ទាត់មួយចំនួននៃកូដនៅក្នុង«រាងកាយ»និងការទាំងអស់។ នៅសល់នៃ "ផ្ដើម" នៅក្នុងដំណើរការនៃភ្ញៀវទេសចរ - វាជាកន្លែងល្អឬប្រាថ្នាទៅជាមួយ។

ដាក់អធិប្បាយនិងលក្ខណៈនៃមុខងារ

опыт, наработаный многими десятилетиями. JavaScript - វាជាច្រើនទសវត្សរ៍មកបទពិសោធ narabotany ។ វាមានប្រវត្តិយ៉ាងសំខាន់នៃការអភិវឌ្ឍ, អ្នកបង្កើតក្រុមការងារដែលមានសមត្ថភាពអ្នកអភិវឌ្ឍន៍សម័យទំនើប។ បានយ៉ាងល្អភាសាគិតថាចេញអាចជឿទុកចិត្តបាន, ស្រស់ស្អាតនិងផ្តល់នូវឱកាសពិតប្រាកដសម្រាប់អ្នកអភិវឌ្ឍន៍ដើម្បីសរសេរកូដសម្រាប់សមរម្យនិងដោយខ្លួនឯងបានធ្វើឱ្យប្រសើរឡើង។

គំនិតនៃក្បួនដោះស្រាយមួយនេះគឺជាមុខងារមួយនៅទីនេះមិនមាននៅក្នុងគោលការណ៍។ ជាការពិតណាស់ការអភិវឌ្ឍន៍គ្រប់ទីកន្លែងនៅលើទំព័រនេះអ្នកអាចបញ្ចូលលេខកូដស្គ្រីបដើម្បីដាក់ចូលទៅក្នុងវាហើយវានឹងត្រូវបានប្រតិបត្តិ។ страницы? ប៉ុន្តែអ្វីដែលជាចំណុចក្នុងកូដដែលត្រូវបានប្រតិបត្តិតែប៉ុណ្ណោះនៅពេលដែល: នៅពេលដែលផ្ទុក (ផ្ទុក) ទំព័រនេះ? តើវាអាចធ្វើទៅបានដើម្បីកំណត់តម្លៃដំបូងនៃអ្វីអថេរសំខាន់មួយចំនួន។

ស្គ្រីប - កន្លែងនេះគឺជាការរៀបរាប់ខាងស្ដាំនៃអថេរនិងមុខងារជាជាងមួយដុំកូដដែលបានសរសេរបានល្អសម្រាប់ជាប្រយោជន៍របស់ខ្លួន។ វាគឺជាសំណុំនៃមុខងារមួយគឺមានសារៈសំខាន់និងមានសារៈសំខាន់, ប្រហែលជា - ការតភ្ជាប់ដោយផ្ទាល់ទៅវិញទៅមករបស់ពួកគេនោះទេប៉ុន្តែជាញឹកញាប់វាជាការខុសគ្នា។ ការរៀបរាប់ទីកន្លែងនៃអនុគមន៍និងជាកន្លែងនៃកម្មវិធីរបស់ខ្លួនគឺមិនមែនជារឿងដដែលនេះ។

វាមិនចាំបាច់ថាអនុគមន៍នឹងមុខងារផ្សេងមួយទៀតដោយផ្ទាល់បានហៅនោះទេប៉ុន្តែវាអាចត្រូវបានធ្វើដោយប្រយោលតាមរយៈការបង្កើតកូដថាមវន្តនេះ។ ភ្ញៀវទេសចរម្នាក់ចំណាយពេលសម្រេចចិត្តមួយនៅក្នុងកូដនេះនិងមុខងារប្រព័ន្ធផ្សេងគ្នាបានធ្វើការណាស់។

សក្ដានុពលមុខងារ

សក្ដានុពលមុខងារ - គឺមិនត្រឹមតែមិនបានដោះស្រាយបានច្រើននិងបានផ្ដល់ទៅឱ្យធាតុដូច្នេះទំព័រគឺជាអនុគមន៍ដែលបង្កើតធាតុនៃទំព័រនេះនិងអំពីការដោះស្រាយជាបន្ទាន់ផងដែរអាចផ្លាស់ប្តូរ។

សកម្មភាពនេះបានកើតឡើងនៅលើទំព័រនេះអាស្រ័យលើធាតុនិងឥរិយាបថអ្នកទស្សនានៅលើវា។ ចលនានៃកណ្តុរ, ក្តារចុច, ប៊ូតុង, ចុច, ព្រឹត្តិការណ៍, ធាតុនិងកាលៈទេសៈឯទៀតនាំឱ្យមានការចាប់ផ្តើមនៃមុខងារចាំបាច់នេះ។

ពីដំបូងគឺមានភាពស្ថិតស្ថេរនោះទេហើយមានស្របទេ។ មានការឆ្លើយតបគ្រប់គ្រាន់ទៅនឹងព្រឹត្តិការណ៍ណ្តាញដែលមានធនធានគឺ។ តើធ្វើដូចម្តេចដែលមានល្បឿនលឿន JavaScript ដែលបំពេញមុខងារជាក់លាក់មួយវាអាស្រ័យលើបច្ចេកទេសជាច្រើន (កុំព្យូទ័រ, បន្ទាត់ការទំនាក់ទំនង) និង semantic (តក្កក្បួនដោះស្រាយតំបន់ប្រធានបទ, មានន័យថាបញ្ហានេះ) កត្តា។

នៅក្នុងការពិតវាអាចត្រូវបានអះអាងថាអ្វីដែលបានធ្វើការនៅក្នុងប៉ារ៉ាឡែលទេប៉ុន្តែអ្វីមួយដែលនឹងបើកបន្ទាប់ពីអ្វីមួយទេប៉ុន្តែអត្ថន័យនៃពិសេសនេះគឺមិន។ វាជាការសំខាន់ណាស់ដែលមុខងារ JavaScript - វាគឺជាឱកាសមួយដើម្បីបង្កើតការឆ្លើយតបទៅនឹងសកម្មភាពនៃការគ្រប់គ្រាន់អ្នកទស្សនាមួយ។

ការគិតថ្មីនេះនៅក្នុងការរចនា: ការចែកចាយដំណើរការនៅក្នុងជម្រៅនៃកម្មវិធីរុករកតែមួយ!

វាក្យសម្ព័ន្ធសម្រាប់អថេរនិងមុខងារនេះ

JavaScript-ត្រូវបានដាក់នៅអថេរស្លាក«ស្គ្រីប»និងនៅក្នុងតួនៃអនុគមន៍។ មុខងារត្រូវបានកំណត់វិធីដូចគ្នានេះដែរ។ អត្ថន័យពិសេសក្នុងការសរសេរនៅក្នុងមុខងារនេះគឺមានមុខងារផ្សេងមួយទៀត, ប៉ុន្តែវាអាចជាការចាំបាច់សម្រាប់ហេតុផលជាច្រើនហើយវាជាការសមហេតុសមផលណាស់។

សង្ខេបនៃអនុគមន៍ជាទូទៅចាប់ផ្តើមជាមួយនឹងពាក្យគន្លឹះ«មុខងារ»ដែលតាមពីក្រោយដោយឈ្មោះរបស់ខ្លួនក្នុងបញ្ជីនៃអាគុយម៉ង់ក្នុងវង់ក្រចកដែលបំបែកដោយសញ្ញាក្បៀសនិងរាងកាយមុខងារក្នុងដង្កៀប។

នៅក្នុងឧទាហរណ៍នេះ, មុខងារពីរត្រូវបានរៀបរាប់ថាផ្តល់នូវការប្តូរប្រាក់រវាង AJAX ទំព័រនិងម៉ាស៊ីនបម្រើ។ មួយផ្នែក scXHR រៀបរាប់ខាងលើនោះទេព្រោះមាននៅក្នុង InitXML ទាំងពីរ, ហើយនៅក្នុង WaitReplySC ។

ឈ្មោះនិងប៉ារ៉ាម៉ែត្រអនុគមន៍ "មុខងារ"

មានត្រូវបានបង្ហាញនៅពេលដែលកំណែអសមកាលមុខងារមុខងារ JavaScript ដែលត្រូវបានគេហៅថាបន្ទាប់ពីការឆ្លើយតបរបស់ម៉ាស៊ីនបម្រើ។ ដូច្នេះការទទួលបានការឆ្លើយតបពីម៉ាស៊ីនបម្រើមួយ WaitReplySC ចូលដំណើរការស្លាកទំព័រ, បំពេញពបានទទួលនិងបណ្តាលមុខងារផ្សេងទៀតដែលល្អអាចផ្តួចផ្តើមសំណើជាប់នឹងម៉ាស៊ីនបម្រើ។

នៅទីនេះវាជាការសំខាន់ក្នុងការសំគាល់ WaitReplySC ថា - អនុគមន៍មួយ។ scXHR.onreadystatechange = WaitReplySC она передается как параметр. ប៉ុន្តែនៅក្នុងបន្ទាត់ scXHR.onreadystatechange = WaitReplySC វាត្រូវបានអនុម័តជាប៉ារ៉ាម៉ែត្រមួយ។ នេះមុខងារផ្ទេរច្បាប់ទូទៅទៅនឹងមុខងារផ្សេងទៀតជាប៉ារ៉ាម៉ែត្រ។ តង្កៀបស្រួចនិងប៉ារ៉ាម៉ែត្ររបស់វាប្រទានឱ្យពួកគេ (s) បាន - អនុគមន៍នឹងត្រូវបានប្រតិបត្តិភ្លាម។ និទានដោយតែឈ្មោះប៉ុណ្ណោះផងដែរដូច្នេះអ្វីដែល។ មុខងារហៅទូរស័ព្ទនឹងធ្វើឱ្យអ្នកដែលបានទទួលបានឈ្មោះរបស់នាង។

មុខងារនេះត្រូវបានអនុវត្តតាមរយៈ AJAX, អនុញ្ញាតឱ្យអ្នកដើម្បីហៅមុខងារ JavaScript តាមរយៈទិន្នន័យដែលទទួលបានពីម៉ាស៊ីនបម្រើ។ នៅក្នុងការពិត, ការផ្ញើសំណើទៅម៉ាស៊ីនបម្រើមួយឬលក្ខណៈពិសេសផ្សេងទៀតមិនអាចនៅទាំងអស់ "ដឹង" ដែលមានមុខងារនាងប្រែហើយតើមានពមួយ។

មុខងាររបស់វាចេញនិងលទ្ធផល

រាងកាយនៃមុខងារនេះអ្នកអាចសរសេរប្រតិបត្តិករភាសាណាមួយដែលនៅក្នុងការពិតសម្រាប់វាត្រូវបានបម្រុងទុក។ លក្ខណៈពិសេសនៅខាងក្នុងត្រូវបានអថេរប្រកាសខាងក្នុងនិងខាងក្រៅប៉ុន្តែមិនដែលបានរៀបរាប់អ្នកក្នុងមុខងារផ្សេងទៀត។

ប្រសិនបើអ្នកចង់មុខងារដើម្បីត្រឡប់លទ្ធផលមួយដែលអ្នកអាចប្រើសេចក្តីថ្លែងការណ៍ត្រឡប់មកវិញ JavaScript ដែល: ត្រឡប់មកវិញ។ រាងកាយនៃអនុគមន៍នេះអាចជាចំនួនគ្រប់គ្រាន់នៃសេចក្តីថ្លែងការណ៍ត្រឡប់មកវិញ។ វាមិនមែនជាការចាំបាច់ដែលថាពួកវាទាំងអស់នឹងត្រឡប់លទ្ធផលនៃប្រភេទដូចគ្នានេះ។

ជាធម្មតាអ្នកអភិវឌ្ឍន៍ត្រូវបានគោរពបូជាឱកាសនេះហើយអាស្រ័យលើស្ថានភាពនេះ, សម្រេចចិត្តដកខ្លួនចេញពីមុខងារបានឆាប់តាមដែលអាចធ្វើទៅបាន។

វាមិនមែនជាការចាំបាច់ដើម្បីរត់តាមរយៈក្បួនដោះស្រាយទាំងមូលនៃមុខងារ, នៅពេលដែលអ្នកអាចទទួលបានកាលពីដើម។

អាគុយម៉ង់មុខងារ

អាគុយម៉ង់ត្រូវបានឆ្លងទៅកាន់បញ្ជីមុខងារដែលបំបែកដោយសញ្ញាក្បៀសត្រូវបានរុំព័ទ្ធក្នុងវង់ក្រចកហើយគឺគ្រាន់តែបន្ទាប់ពីឈ្មោះរបស់នាង។ អាគុយម៉ង់ដែលបានប្រើឈ្មោះអថេរប៉ុន្តែអ្នកអាចហុចតម្លៃដោយផ្ទាល់។ ដើម្បីហុចមុខងារ JavaScript នៅក្នុងមុខងារមួយ, អ្នកគ្រាន់តែត្រូវការដើម្បីបញ្ជាក់ឈ្មោះរបស់ខ្លួនដោយមិនមានតង្កៀប។

នៅខាងក្នុងមុខងារនេះគឺជាអាគុយម៉ង់អថេរអាចប្រើបាន, ដែលមានទ្រព្យសម្បត្តិប្រវែងមួយ។ អ្នកអាចយោងទៅតាមរយៈមុខងារអាគុយម៉ង់អាគុយម៉ង់ណាមួយ [0], អាគុយម៉ង់ [1] ... ដើម្បីអាគុយម៉ង់ចុងក្រោយនេះ [arguments.length-1] ។

ការផ្លាស់ប្តូរមុខងារនៃអាគុយម៉ង់នេះគឺពិតជានៅក្នុងមុខងារនេះប៉ុន្តែមិននៅខាងក្រៅវា។ ក្នុងគោលបំណងដើម្បីផ្លាស់ប្តូរអ្វីមួយនៅក្រៅមុខងារប្រតិបត្តិករត្រូវតែប្រើត្រឡប់មកវិញ JavaScript, តាមរយៈការដែលហុចតម្លៃដែលបានទាមទារទៅខាងក្រៅ។

បន្ទាប់ពីមុខងារបញ្ចប់, ទាំងអស់ដែលត្រូវបានផ្សារភ្ជាប់ជាមួយនឹងការអនុវត្តន៍របស់ខ្លួននឹងត្រូវបានបំផ្លាញចោល។ កំឡុងពេលប្រតិបត្តិនៃអនុគមន៍អាចផ្លាស់ប្តូរអថេរខាងក្រៅ, លើកលែងតែអ្នកដែលត្រូវបានរៀបរាប់នៅក្នុងមុខងារផ្សេងទៀតរួមទាំងអ្នកដែលនៅក្នុងផ្ទៃខាងក្នុង។

យើងមានអាគុយម៉ង់អចលនទ្រព្យ callee ដែលមានបំណងដើម្បីហៅមុខងារដែលត្រូវបានអនុវត្តនៅពេលដែលបានផ្តល់ឱ្យនោះទេ។ ប្រសិនបើមានមូលហេតុដោយខ្លួនវាផ្ទាល់ដែលជាកំណែ JavaScript នៃអនុគមន៍នៅក្នុងមុខងារនេះនឹងអនុវត្តការហៅខ្លួនឯង។

ការប្រើមុខងារ

ការព្រួយបារម្ភសំខាន់នៃមុខងារ - ដើម្បីបម្រើកម្មវិធីរុករកព្រឹត្តិការណ៍នេះ។ ដើម្បីធ្វើដូចនេះបានស្ទើរតែជារៀងរាល់មានសមត្ថភាពស្លាកដើម្បីបញ្ជាក់ឈ្មោះព្រឹត្តិការណ៍និងមុខងារនៃការផលិតរបស់ខ្លួន។ អ្នកអាចបញ្ជាក់ព្រឹត្តិការណ៍ច្រើន, ប៉ុន្តែព្រឹត្តិការណ៍គ្នាត្រូវបានចង្អុលបង្ហាញមុខងារតែមួយប៉ុណ្ណោះ។

មុខងារមួយអាចដោះស្រាយបានច្រើននិងធាតុទំព័រព្រឹត្តិការណ៍មួយចំនួន។ តាមរយៈជម្រើស«នេះ»អ្នកអាចផ្ទេរមុខងារពជាកន្លែងដែលវាត្រូវបានគេហៅ។

ការប្រើប្រាស់បុរាណនៃ JS-មុខងារ - កម្មវិធីដោះស្រាយព្រឹត្តិការណ៍នេះនៅលើធាតុ។ នៅក្នុងឧទាហរណ៍នេះ scfWecomeGo () មុខងារឬ scfWelcomeCancel () ត្រូវបានគេហៅថាក្នុងទម្រង់ការបញ្ចូល / ទិន្នផលនៃភ្ញៀវទេសចរនេះ, ហើយនៅពេលជ្រើសរបៀបប្រតិបត្តិការ scfMenuItemClick (នេះ) ។

ក្នុងករណីចុងក្រោយនេះបានឆ្លងទៅកាន់ប៉ារ៉ាម៉ែត្រ«នេះ»ដែលអនុញ្ញាតឱ្យអ្នកដើម្បីរៀនដោយអព្ភូតហេតុពីអ្វីដែលជាកំពូលតារាចម្រៀងស្រីដែលត្រូវបានគេហៅថា។ ជាការពិតណាស់, ដូច្នេះត្រូវបានដាក់ JavaScript នៅ DOM បានគុណភាពហើយវាត្រូវបានដូច្នេះងាយស្រួលអនុញ្ញាតឱ្យអ្នកដើម្បីរុករកធាតុរបស់ខ្លួនដើម្បីប្រមូលពការចាំបាច់ដែលថាទំព័រសក្ដានុពលគ្រាន់តែមិនអាចទាយទុកជាមុនអាចមាន។

មុខងារនេះមិនមានដើម្បីត្រឡប់ខ្សែអក្សរ, លេខ, ឬមុខងារផ្សេងទៀត។ វាអាចវិលត្រឡប់មកវិញជាមួយ HTML ដែលធាតុពេញលេញហើយដែលជាចំនួនបានទាមទារនៃធាតុដោយមានការគ្រប់គ្រងរបស់ខ្លួន, ព្រឹត្តិការណ៍របស់ពួកគេ។

ដោយដាក់ធាតុនៅលើទំព័រដែលត្រូវបានបង្កើតមុខងារថ្មីមួយដែលជាការល្អនៅក្នុងលក្ខខណ្ឌនៃការដោះស្រាយបញ្ហានេះនិងជួបផលប្រយោជន៍នៃភ្ញៀវទេសចរនេះ, ប៉ុន្តែពិតជាមានការលំបាកនៅក្នុងលក្ខខណ្ឌនៃការអនុវត្ត។

ចាប់តាំងពីការអភិវឌ្ឍនៃការដូចមួយដែលមានមុខងារពេញលេញ, ងាយស្រួលក្នុងការទទួលបានបាត់បង់នៅក្នុងកូដដើមកំណើតនៅក្នុងការហៅមុខងារនៅក្នុងគ្រាបង្កើតឡើងឬថានៅពេលមាតិកាមួយឬមួយផ្សេងទៀតនៃទំព័រ។ មុនពេលទទួលយកទិសដៅនៃការអភិវឌ្ឍដូចជាមិនបានបង្អាក់ដល់ទម្ងន់អ្វីគ្រប់យ៉ាងបានល្អ។

នៅលើការចែកចាយនៃការគិត

អ្នកអភិវឌ្ឍន៍មានការគិតនៅក្នុងកម្រិតនៃធាតុទាំងអស់នៃទំព័រនៅព្រឹត្តិការណ៍ទាំងអស់នេះហើយមានការធ្វើបទបង្ហាញយ៉ាងច្បាស់ពីរបៀបដែលអ្វីគ្រប់យ៉ាងពិតជាបានកើតឡើង។ វាជាការលំបាកនោះទេប៉ុន្តែការងារនេះគឺមានតម្លៃវា។

នៅក្នុង JavaScript, មុខងារនេះអាចនឹងត្រូវពន្យារពេលរហូតដល់ព្រឹត្តិការណ៍មួយចំនួននិងលក្ខណៈពិសេសជាច្រើនដូចជាអាចមាននិងព្រឹត្តិការណ៍មាននិន្នាការក្នុងការរីករាលដាលនិងទទួលបានការចូលទៅក្នុង "វិស័យនៃភាពមើលឃើញ" នៃដំណើរការនានាបាន។

ក្នុងឧទាហរណ៍នេះនៅកន្លែងណាមួយមុនពេលដែលមុខងារត្រូវបានគេហៅថាដែលបានផ្តួចផ្តើមធាតុម៉ឺនុយការរុករកឯកសារ។ វាត្រូវបានសន្មតទំព័រ, ដែលនៅក្នុងបង្អួចឯកសារទាំងប្រាំពីរគ្រាន់តែបាន, ដែលអាចត្រូវបានយកចេញនិងដំណើរការ។ អាចត្រូវបានផ្លាស់ប្តូរជាឯកសារដោយចុចលើជួរដេក, និងគ្រាប់ចុចព្រួញនិងប្លុកនៃប្រាំពីរជួរដេក។

នៅក្នុងករណីគ្នាមានមុខងារផ្ទាល់របស់វា។ នៅក្នុងពាក្យផ្សេងទៀតនៅក្នុងឧទាហរណ៍សាមញ្ញនេះអ្នកត្រូវសរសេរពីររាប់សិបនាក់នៃលក្ខណៈពិសេសដែលនឹងមានប្រតិកម្មទៅនឹងព្រឹត្តិការណ៍នានា, និងមួយចំនួននៃមុខងារទាំងនេះនឹងដោះស្រាយភាពខុសគ្នានៃជម្រើសនិងស្ថានភាពដែលព្រឹត្តិការណ៍នេះមិនមែនជារបស់មួយ។

ជាឧទាហរណ៍ពេលយកចេញបន្ទាត់ខាងក្រោមនេះត្រូវតែត្រូវបានផ្លាស់ទីលំនៅ upwardly ។ នេះនឹងតម្រូវឱ្យមានការធ្វើឱ្យការជ្រើសរើសទាំងថ្មីមួយដែល commonplace និងយ៉ាងច្បាស់ធនធានឬដើម្បីរាប់បន្ទាត់ប្រើមុខងារ JavaScript នៅលើអារេនិងដើម្បីសម្រេចបាននូវគោលដៅស្រស់ស្អាត។

អាគុយម៉ង់និងលទ្ធផលនៃមុខងារ

JavaScript ដែលអនុញ្ញាតឱ្យអ្នកដើម្បីនាំយកកូដទៅស្ថានភាព "មានលក្ខណៈពិសេសពេញលេញ" ។ ជាធម្មតានៅពេលដែលអាគុយម៉ង់នៃអនុគមន៍ជាអនុគមន៍នេះ។ ជម្រើសត្រូវបានអនុញ្ញាតអនុគមន៍ត្រឡប់អនុគមន៍មួយ។ JavaScript ត្រូវចំណាយពេលវាបានយ៉ាងស្ងាមស្ងាត់។

នេះគឺជាយន្តការល្អនោះទេប៉ុន្តែជាភាពស្មុគស្មាញក្នុងការទាក់ទងទៅនឹងការអនុវត្តន៍។ បច្ចេកទេសអនុញ្ញាត semantic ផ្តល់នូវ "មុខងារ" បញ្ជូនតក្កដោយអ្នកអភិវឌ្ឍន៍ដែលមានសមត្ថភាពតែមួយ។

នៅពេលដែលមុខងារ JavaScript នៅក្នុងមុខងារមួយ - សិទ្ធិទាំងអស់នោះទេប៉ុន្តែនៅពេលដែលមុខងារបង្កើតមុខងារមួយហើយថាមួយផ្សេងទៀត, តក្កគឺជាការលំបាកណាស់ក្នុងការអនុវត្តតាម។ នៅក្នុងការពិតសំណួរគឺថាតើដើម្បីអនុវត្តជំនាញសំណួរនេះគឺដើម្បីទទួលបានលទ្ធផលដែលមានសុវត្ថិភាពនិងត្រឹមត្រូវ។

ការថែទាំអ្នកអភិវឌ្ឍន៍គឺច្បាស់និងសាមញ្ញ។ មានបញ្ហាមួយគឺអ្នកត្រូវដំណោះស្រាយមួយដែលមិនមែនជាកំហុសដូចជា«កំហុស JavaScript ដែលប្រតិបត្ដិការនេះគឺមានអសន្ដិសុខ» , អេក្រង់ទទេឬបញ្ឈប់ម៉ាស៊ីនកម្មវិធីរុករកទាំងអស់។

ប្រសិនបើមានអាគុយម៉ង់គឺជាមុខងារមួយ, បន្ទាប់មកអ្នកអភិវឌ្ឍន៍ដើម្បីឆ្លងអថេរដែលមានលក្ខណៈសម្បត្តិពិសេសមួយ, ដែលមិនមែនជាលេខមិនមែនអក្សរមួយ, មិនវត្ថុមួយ។ ប៉ុន្តែការប្រើប្រាស់ដូចអាគុយម៉ង់មួយអាចនាំឱ្យមានការផ្លាស់ប្តូរអថេរការពិតដែលថាខាងក្រៅនិងជាលទ្ធផលនៃការប្រតិបត្តិមុខងារនេះ។ ដោយអាស្រ័យលើការផ្លាស់ប្តូរដែលនឹងត្រូវបានគ្រប់គ្រាន់ផ្ទេរនេះ។

កូដដែលបានបង្កើតប្រតិបត្តិ

អនុវត្តកូដប្រតិបត្តិដែលបានបង្កើតនៅក្នុងវគ្គសិក្សានៃការងារកូដផ្សេងទៀត, វាគឺអាចធ្វើបានដោយមធ្យោបាយនៃការ« eval »។ វាមិនត្រូវបានចាត់ទុកថាជាដំណោះស្រាយល្អបំផុត, ប៉ុន្ដែជាញឹកញាប់មិនអាចមានភាពស្មុគស្មាញកូដជាមួយមុខងារដែលមិនចាំបាច់និងដើម្បីកំណត់ការបង្កើតបន្ទាត់ដែលធម្មតានៃកូដ JavaScript និងគ្រាន់តែប្រតិបត្តិវា។

ក្នុងឧទាហរណ៍នេះបញ្ចូលត្រូវបានបង្កើតឡើង stitch ចូលទៅក្នុងប្រតិបត្ដិការពមួយចំនួន div ។ តារានិងមាតិកាពសម្រាប់ចំនួនខុសគ្នានៃមុខតំណែងផ្សេងគ្នាដោយសារតែការសម្រេចចិត្តនៅក្នុងស្ថានភាពដូចនេះមិនបានផ្តល់នូវស្ថានភាពធានា« JavaScript កំហុសប្រតិបត្ដិការនេះគឺមានអសន្ដិសុខ» , ប៉ុន្តែការផ្តល់ឱ្យយ៉ាងរឹងមាំផលប៉ះពាល់ដែលចង់បាន។

ផ្លាស់ប្តូរគំរូ nuances JavaScript "មុខងារនៅក្នុងមុខងារនេះ"

ប្រសិនបើអ្នកអាចធ្វើបានដោយគ្មានជរ, វាជាការល្អប្រសើរជាងមុនដើម្បីប្រើវា។ ជម្រើសទាំងអស់នេះគឺជាការល្អ។ ជាការពិតណាស់នៅក្នុងករណីជាច្រើន, វាគឺជាដំណោះស្រាយតែមួយគត់។

ឧទាហរណ៍នៃការហៅខ្លួនឯងបុរាណ: រោងចក្រ។ វាជាការលំបាកគ្រប់គ្រាន់ក្នុងការសរសេរក្បួនដោះស្រាយដែលនឹងរង្វិលជុំមួយ, ប៉ុន្តែវាគឺជាការសាមញ្ញណាស់, អ្នកអាចជំរុញឱ្យតម្លៃស្រោមសំបុត្រនោះ។ ហ្វាក់តូរីយ្យែលកំពុងរីកចម្រើនយ៉ាងឆាប់រហ័សផងដែរ។

ទោះជាយ៉ាងណា, ការហៅខ្លួនឯងនិងការហៅអនុគមន៍មុខងារផ្សេងមួយទៀតដែលអាចធ្វើឱ្យការហៅយកមកវិញបានជូនដំណឹង - រឿងធម្មតា។

ឧទាហរណ៍តារាងធម្មតា។ តារាងផ្សេងទៀតអាចជាតារាងមួយ។ សំណាញ់មិនអាចត្រូវបានហាមឃាត់។ សរសេរសម្រាប់តារាងគ្នាកំណត់ផ្ទាល់ខ្លួនពីលក្ខណៈពិសេស - ប្រណីតច្រើនពេក។

ឧទហរណ៍បែបនេះគឺមានច្រើនហើយអ្នកទាំងអស់នេះនឹងក្លាយជាបញ្ហាពិតប្រាកដនិងជាបន្ទាន់មិនមែនដោយសារតែការសរសេរកម្មវិធី។ នោះជាមូលហេតុដែលបញ្ហានោះស្ថិតនៅក្នុងការពិតដែលថាគ្មានជរមិនបានបង្កើតប្រព័ន្ធនៃមុខងារមួយ, បន្ថែមទៀតយ៉ាងជាក់លាក់, បំបាត់កំហុសនិងការប្រតិបត្ដិការជាបន្តបន្ទាប់របស់ខ្លួនបានក្លាយទៅជាអាចទុកចិត្តបានការថែទាំ JavaScript និងអភិវឌ្ឍន៍។

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 km.birmiss.com. Theme powered by WordPress.