Kompjuters, Programmazzjoni
JS foreach joġġezzjona bħala disinn ta 'varjanti
Is-sintassi ta 'JavaScript tipprovdi l-abbiltà li tikkombina l-varjabbli f'arranġamenti u oġġetti. L-aċċess għall-elementi jista 'jinkiseb permezz ta' indiċi u ismijiet, permezz ta 'operaturi tal-linja.
Iżda mhux dejjem huwa possibbli li jkun magħruf in-numru ta 'elementi fil-ġbir fl-istadju tad-disinn u mhux dejjem huwa konvenjenti li tuża s-sintassi tal-lingwa fis-semantika li tipprovdi.
Disinni Classic
Id-dikjarazzjoni tas-soltu taċ-ċirku "għal (var i = 0; i Var i = 0; Meta n-numru ta 'elementi mhux magħruf. Tista 'wkoll tibni algoritmi oħra għall-mili u l-ipproċessar ta' matriċi, iżda huwa ferm aktar konvenjenti li tuża għażliet ġodda u moderni. Il-klassiċi huma tajbin meta għandek bżonn tipproċessa l-kwestjonarji tad-dipartiment tal-persunal (kunjom, isem, patronimiku, post), karti tat-tagħmir (mudell, manifattur, bejjiegħ, data tal-bejgħ) u data oħra li ma jinbidlux strutturalment u huma ta 'interess aggregat. Meta element ta 'firxa huwa fih innifsu oġġett jew struttura, għandu l-proprjetajiet u l-metodi tiegħu stess, allura l-klassiċi ma jistgħux ilaħħqu mad-dinamiċi tal-kwantità u l-kwalità, u l-firxa tieħu sinifikat differenti. Fid-dinamika, il-manifestazzjoni ta 'firxa ta' proprjetajiet ta 'l-element attwali hija essenzjali. Il-kostruzzjoni tal-firxa tal-JS Foreach, li hija kemmxejn differenti minn dik tas-soltu (aċċettata f'lingwi oħra), tippermetti li l-firxa turi l-proprjetajiet tagħha permezz tal-element kurrenti tagħha. Per eżempju, firxa waħda fiha toroq (il-karatteristiċi kwalitattivi u kwantitattivi tagħhom), u firxa oħra huma karozzi li jistgħu jivvjaġġaw biss f'ċerti toroq u għandhom volumi differenti ta 'tankijiet tal-karburant, jiġifieri, id-distanzi bejn stazzjonijiet tal-gass għandhom ukoll sinifikat. F'din il-verżjoni, algoritmu spedjenti għandu jieħu bħala bażi, per eżempju, it-triq u jagħżel il-karozzi li jistgħu jgħaddu minnha. U huwa aħjar, jekk it-triq u l-karozza, li jaġixxu fil-programm bħala oġġetti, "jsibu ruħhom". Din hija applikazzjoni naturali ta 'programmazzjoni orjentata lejn l-oġġett, li, fost affarijiet oħra, ma twassalx għall-ħtieġa li jinbidel l-algoritmu meta jinbidlu kollezzjonijiet ta' toroq u karozzi, iqis awtomatikament toroq fit-tiswija, karozzi fuq manutenzjoni, eċċ. Teknikament, fuq JS foreach, l-istruttura tidher sempliċi ħafna: "aData.forEach (fData);", fejn fData hija l-funzjoni li hija applikata għal kull element tal-firxa aData: Funzjoni fData (valur, indiċi) {sText + = indiċi + '=' + valur + '; "; }. Jekk id-data oriġinali hija ppreżentata kif ġej: Var aData = [1,2,3,4]; Imbagħad ir-riżultat ta 'din l-applikazzjoni ta' JS foreach ikun: "0 = 1; 1 = 2; 2 = 3; 3 = 4; 4 = 11; 5 = 22; 6 = 44; 7 = linja 1; 8 = linja 2;". L-oġġett fil-JavaScript huwa speċjali. L-użu ta 'oġġetti f'din il-lingwa huwa differenti ħafna mill-implimentazzjonijiet f'lingwi oħra. Oġġett huwa firxa ta 'proprjetajiet u metodi. F'dan il-każ, dawn ta 'l-aħħar attwalment iwettqu l-azzjonijiet, jippreservaw jew jeditjaw il-kontenut tagħhom stess jew estern ta' oġġetti oħra, arranġamenti, varjabbli. L-oġġetti li ġejjin għall-firxa bħala frames fuq film, meta wieħed iħares lejn JS foreach constructs ta 'oġġetti, jiffurmaw semantika ġdida: il-kostruzzjoni ta' tifsira varjabbli . Għalhekk, it-toroq infushom jingħataw l-opportunità li jagħżlu karozzi li jistgħu jivvjaġġaw permezz tagħhom, u dan ta 'l-aħħar jiffiltra l-jiem disponibbli għar-rotot tagħhom. Jekk ma tagħtix attenzjoni għal dik it-tkeċċija f'din l-għażla ta 'programmazzjoni tqajjem l-affidabilità tal-kodiċi, il-kompitu - li jiddetermina r-rotta tal-kunsinna tal-merkanzija - iġġib id-disinn ta' JS foreach f'soluzzjoni sinjifikanti u sempliċi: li jxerred ir-rotot tul it-toroq, jagħżel il-magni u jwettaq il-kunsinna tal-merkanzija. Jekk ir-rotot, it-toroq u l-magni huma arrays ta 'oġġetti, allura l-algoritmu huwa ħafna aktar sempliċi. Jidher stramba li l-apparenza tad-disinn ta 'JS foreach tant ilu jistenna. Madankollu, minkejja s-sempliċità tal-kitba, fil-prattika huwa pjuttost diffiċli li tiġi implimentata. Il-ħsieb ta 'l-iżviluppatur modern jaħdem ma' l-oġġetti tas-soltu għall-ipprogrammar, iżda mhux l-oġġetti tal-problema reali. M'huwiex abitwali li nifhmu bħala tali triq, karozza, rotta, distanza ... Programmar orjentat lejn l-oġġett żviluppa b'modi delikati, u tradizzjonalment saru soltu li jinħolqu oġġetti ta 'programm: firxa, forma, buttuna, tieqa ta' għażla tar-rotta, eċċ. Barra minn hekk, JS foreach flimkien ma 'kostruzzjonijiet ta' lingwi oħra jiġi eżegwit fil-browser tal-viżitatur, li jintroduċi limitazzjonijiet serji fil-prattika. Mhux kull iżviluppatur huwa lest biex jaqsam il-kodiċi tiegħu. Eżempji effettivi ta 'l-użu ta' arranġamenti u ġabriet ta 'oġġetti reali huma mod tajjeb kif titjieb l-għarfien. Madankollu, id-disponibilità tal-kodiċi JavaScript għall-użu mhux intenzjonat tal-iżviluppatur għandha effett indirett fuq l-iżvilupp ta 'ideat promettenti għall-ħolqien ta' oġġetti dinamiċi u reali. Il-kostruzzjonijiet ta 'JS foreach għadhom mhumiex perfetti, u l-iżvilupp tas-semantika tagħhom jidher li hu direzzjoni promettenti ħafna.
Filwaqt li (tip ta 'aData [i]! =' Undefined ') {... aData [i]; ... i ++; }, Ċikli għal kull element
AData.push (11);
AData.push (22);
AData.push (44);
AData.push ('linja 1');
AData.push ('linja 2');
Var sText = '', Karatteristiċi ta 'arrays with objects
Prattika JS foreach u oġġetti reali
Similar articles
Trending Now