ComputerenProgramméiere

Javascript-vill an hirer Creatioun. All iwwer Javascript flamenden Ofgrond

An dësem Artikel gëtt mir um Javascript-vill, seng Komponente Wanterschlof war. Javascript ass eng perfekt Szenario-konzentréiert Sprooch fir programméiere entworf. An Tatsaach, setzen se den ECMAScript Sprooch (Standard ECMA-262).

Vun Javascript? Et ass wéi enger agebetter Sprooch an Bestellung benotzt de Wee vun de Programm fir de Sujet Applikatioun ze bestëmmen. Et kann am Browser fonnt ginn: et benotzt gëtt do als scripting Sprooch dass Web Säiten interaktiv gëtt.

Déi grouss architektonesch Fonctiounen vun dësem Produit sinn dynamesch a schwaach per, avtoupravlenie Erënnerung ideal programméiere Funktiounen déi Objete vun der éischter Offlossquantitéit sinn.

Eigentlech, an Javascript beaflosst verschiddene Grënn, well d'Entwécklung eng Sprooch ähnlechen zu Java schafen géif, mä einfach vun Programméierer konzentréiert. Iwwregens, gesäit de Javascript Sprooch selwer keng Firma oder Organisatioun dass et anescht wéi eng Rei vun programméiere Stiler benotzt vun Web Entwéckler mécht.

Et soll dat Javascript feststellen ginn - enregistréierte Mark vun e méi Corporation Group.

Wat ass eng vill?

Genannt vill Daten Typ, deen nummeréiert Wäerter Geschäfter. All esou Wäert ass Éieren wéi der vill Komponent an d'Zuelen aus déi bent de Volet, genannt en Index. Javascript-lackeleg untyped. Dat heescht, datt de massive Deeler irgend engem Typ, mat verschidden Deeler gehéiert zu der selwechter vill hun kann, muss komplett verschidden Zorte.

Zousätzlech, ass Javascript-vill dynamesch, an et ass gesot, datt e feste Gréisst net deklaréiert ginn brauchen. No iwwerdribblen nei Deeler zu all Moment.

staark Produktioun

Mat der Javascript Sprooch eng Hellewull ganz schwéier ze schafen. Et ginn zwou Methoden fir dës. Déi éischt ass d 'Produktioun vun engem vill setzt e benotzt - vun eckeg Klammeren, an déi eng Lëscht vun Elementer gesat ass, duerch Gänseféissecher ënnerdeelt.

  • VAR eidel = []; // eidel vill;
  • VAR numers = [4, 1, 2, 5]; // vill mat fënnef digital Komponente;
  • VAR diff = [1,5, falsch, «Text"]; // vill mat dräi Elementer vun verschidden Zorte.

Als Regel, ass et net néideg einfach Wäerter (Zeile an Zuelen) gin. Et kann awer och all aner Ausdrock ginn, zum Beispill, Objet literals, aner Funktiounen an flamenden Ofgrond.

Déi zweet Aart a Weis eng Partie Designer ze schafen ass Singular ze ruffen (). Ze invitéieren hien ee vun dräi Methoden:

  • Call engem Designer ouni Argumenter: VAR b - nei Singular (). Et gëtt fir d'Schafung vun eidelen vill gläichwäerteg ze eidelen Employeeën [].
  • D'Designer huet Precisioun explizit de Wäert n vun der vill Deeler: VAR b = nei Singular (1, 3, 5, 8, "Linn», richteg). An dësem Fall, presentéiert d'Designer eng Lëscht vun Argumenter, déi an enger neier vill Komponente transforméiert ginn. Argumenter sinn zu der vill geschriwwen ass d'Plaz wou uginn.
  • Definitioun den Ëmfang fir weider Attributiounsregele Wäerter. Dëst ass duerch Precisioun der erkennen vill gemaach eng Rei zouenen an parentheses: VAR b = nei Singular (5). Dës Method vun erkennen d 'Bewëllegung vill néideg Quantitéiten vun Komponente mat enger Méiglechkeet vun Attributiounsregele Wäerter an Presentatiounen (all vun deem wéi ondefinéiert opgezielt ass). Dës Form ass meeschtens benotzt d'Javascript-vill ze Pre-léinen hir Längt ass am Viraus gewosst.

Opzehuelen, Liesen a iwwerdribblen Detailer vun der vill

Kréien op d'Komponente vun der vill kann via Bedreiwer [] ginn. Iwwregens, all vun der Komponente vun Javascript, aus null ugefaange, sinn nummeréiert. Fir déi néideg Elementer, weg hir Zuel am kritt eckeg Klammeren. Als allgemeng Regel, kann Saache geännert gin. A Javascript un der vill ze sëtzen, ass et duer eng nei Wäert ze uginn.

Et soll feststellen, datt an Javascript flamenden Ofgrond all Zuel vun Elementer vun iergendenger Geschäft kann.

D'Längt vun der vill

Sou kennen mer wat Javascript. Längt vun der vill am Allgemengen ass eng interessant Phänomen. Loosst eis et am Detail betruecht. All laut sinn benotzt Singular Designer gebaut () an hun fonnt Bunn setzt e vill eng spezifesch Längt Verméigen, déi sparing den Total vun Elementer zitt. Zanter der vill vun der Detailer onsécher gin kann (ondefinéiert Den designéierte), eng méi genee Ausdrock Kläng sou: Qualitéit Längt ass ëmmer méi duerch eng wéi déi gréisst Zuel (Index) vun der vill Volet. Qualitéit Längt ass automatesch ugepasst, korrekt vun enger Partie vun neie Detailer um krut Generatioun.

Fir d'Finale Volet vun enger Partie Kaart, kënnt Dir d'Längt Propriétéit benotzen.

De leschten Deel ass den Index eng manner wéi der Gréisst vun der Partie. Nom Countdown fänken ëmmer vun Null. Oh, dat Javascript! D'Längt vun der vill hänkt seng exakt Zuel vun den Elementer. Dofir, wann Dir wësst net wéivill soll et ginn, mä Dir musst der Finale Element vun der vill ze maachen, ass et néideg de Rekord ze gëllen: v.length - 1.

Iterate der vill vun Deeler

Ganz oft, ass d'Längt Propriétéit un iterate iwwer déi vill Deeler am Zyklus benotzt:

  • VAR Uebst = [ «Strawberry", "hat souguer," "Apple", "banana"];
  • fir (VAR ech = 0; ech
  • Déi (Uebst [i] + "...»).

An dësem Beispill schéngt et, datt déi Deeler kontinuéierlech a Start mat dem éischten Deel arrangéiert sinn, déi Index null hält. Wann dëst net de Fall ass, virun all Element vun der vill Vocatioun sollen iwwerpréift ginn, ob et definéiert ass.

D'Zyklus ass och heiansdo benotzt d'Komponente fir initialize.

D'Erhéijung an der truncation vill

Ech wonneren wéi benotzt Sprooch Javascript String an en vill ze sëtzen? Am Prozess mat flamenden Ofgrond vun schafft, Längt Längt verbessert automatesch d'Qualitéit, dat ass firwat mir vun et ze passen selwer hunn. Et ass néideg engem eenzege Detail ze Réckruff - Längt Verméigen fir liesen-nëmmen net disponibel ass, mä fir de Rekord. Wann der Spezialfäegkeeten Wäert Qualitéit Längt déi d'Gréisst vun der aktueller gëtt, ass de vill un engem Prinzip Wäert reduzéiert. All Deeler, datt si net an déi nei Gamme vun bestinn abegraff, recline, an hir Wäerter gi verluer, och wann Dir spéider Längt Retour zréck - Wäerter net restauréiert ginn.

Ganz kloer einfach der vill wéi: foo.length = 0.

Wann d'Qualitéit vun Laf Längt grouss wéi seng aktuell Wäert, um Enn vun der vill gëtt nei, onidentifizéierte Komponente ginn, wat se zu der gewënschter Gréisst Erhéijung gëtt.

Läschen eng Partie vun Detailer

D'läschen Bedreiwer bedeit de Volet vun der vill ze ondefinéiert, mä et geet an dësem Fall ze existéieren. Wann Dir d'Javascript Element vun der vill ze läschen wëll sou datt de Rescht Deel zu der fräi Plaz onreegelméissegen, braucht Dir ee vun de Weeër ze benotzen der vill ze soe. Method Array.shift () verschwënnt engem éischte Volet, Pop () - op alle Komponent an eng Method splice () - eng Komponent oder soss vill Gamme.

multidimensional flamenden Ofgrond

Et schéngt, datt mer e bëssen, verstoen wat Javascript. Zwee-zweedimensional flamenden Ofgrond - dat als weider ginn muss. erënneren Mengt Dir dass Javascript flamenden Ofgrond als Komponente vun aneren Elementer enthalen kann? Dës Fonktioun ass fir d'Produktioun vun Multi-zweedimensional flamenden Ofgrond benotzt. Ze fueren ass d'Komponente vun enger Partie vun flamenden Ofgrond genuch fir de Klammeren zweemol gëllen.

enger Associatioun flamenden Ofgrond

Elo léieren mir wéi Mark zu Javascript enger Associatioun flamenden Ofgrond benotzt. Maachen dat brauchen mir an der Theorie am Wanterschlof: Associatioun flamenden Ofgrond sinn heiansdo mä awer och Dëscher genannt. Dank hinnen, sinn amplaz vun der Index Zeile applizéiert. De Gebrauch vun esou Strukturen erënner vun der Benotzung vun de Numm vun der Eegeschafte vun engem einfachen Objet, mä an dësem Ausdrock, d'Leeschtungsfähegkeet vun der Aarbecht an engem vill Format. Well et keng Manéieren vun manipuléiert Javascript flamenden Ofgrond enger Associatioun sinn, sinn se vill manner oft wéi gewinnt benotzt. Et soll feststellen, datt si nach fir Daten Stockage an Vereinfachung Stockage vun Deeler nëtzlech kann, déi Rampen ginn.

Wasserstoff vill

An elo gëtt mer am Javascript System studéieren? Wasserstoff vill zu der Dialog Këscht (um Ecran), wéi och de Wasserstoff Wäerter vun der vill Komponenten.

Wann de Programm Dir d'Wäerter vun alle Komponente fir Haaptsäit wëllen, dann ass dat praktesch d'Instruktioune fir ze gëllen. Spannen, den Variabel-Konter Regele fir Gebrauch op der selwechter Zäit wéi de Volet vun der vill Index.

Botzen

Fir eng Partie vun Javascript ze filteren, braucht Dir seng Längt ze zréckgesat:

  • VAR myArray = [1, 2, 5, 23];
  • myArray.length = 0.

Déi folgend weist der Ëmsetzung vun Destinatioun kloer (), an engem Kader, Javascript-Prototyp:

  • kloer: Funktioun () {;
  • this.length = 0;
  • Retour dës;
  • }.

Schan an Stoppen Komponente

Gutt, mir weiderhin weider dëst spannend Sprooch Javascript Entdeckung. vill Element wéi méiglech an ze läschen an déi selwecht Art a Weis wéi konventionell Eegeschafte vun aneren Objeten Foto. Mä et sinn e puer Ënnerscheeder: iwwerdribblen da Qualitéit Längt Eegeschafte kann variéieren, mä an der Verännerung vun der Eegeschafte Längt kann z'identifizéieren Qualitéit éliminéiert ginn. Am Prinzip, well d'Installatioun Algorithmus zu flamenden Ofgrond ass wéi follegt:

  • Wann engem digitale onbekannt Eegeschafte vum ech Schan, wann d'Längt ze selwecht ass oder manner wéi ech, ass Längt ech 1 + gin alles.
  • Wann Dir d'Qualitéit vun Längt änneren den folgenden Démarche'en bis Leeschtunge: wann der zougewisen Wäert wéi null manner ass, säi dann RangeError. Achtelsfinal all z'identifizéieren Qualitéit wand dat selwecht zu der neier Längt sinn, a méi grouss wéi.

Eigentlech ewechzehuelen Element Javascript vill einfach ass. No all, och d'Längt Kader, braucht Dir de "extra" Komponente vun et ze läschen. Et folgendermoossen aus dëser Botzen Optioun vill. Wann der ofwiesselnd eng nei eidel vill, fir irgend engem Grond zougewisen ass, net zefridden waren, an et ass noutwendeg déi aktuell ze Compteur, ass seng Qualitéit genuch Längt engem Wäert vun null bis uginn.

unshift Methoden, dréint, Pop a weist

Trotz der Tatsaach, datt d'Komponente vun der vill manuell geännert ginn, vill recommandéiere dëst gebaut-an Methoden ze benotzen. Et ass dëst nuance déi richteg Wäert vun der Qualitéit garantéiert an de Mangel vun Längt vun der vill Visiteuren. Iwwregens, gëtt d'Qualitéit vun richteg Längt zu der Zuel vun Komponente sëlwecht.

Prozess Kombinatiounen Enn vun der vill iwwerdroen heizou ze leeschten. Pop zréck Prozess gëtt d'Finale Komponent a verschwënnt et.

Generell am Internet Explorer ënner aachten Versioun kann unshift ondefinéiert zréck, an anere Browser - déi nei Wäert vun Längt. Sou datt de Retour Wäert vum unshift besser net ze hoffen.

D'Zousätzlech an Eliminatioun vun Deeler an der Mëtt vun der Partie

Wann Dir eng Partie vun Javascript ze läschen wëlls, muss du ze huelen? Et ass bekannt, datt d'Method eng Ënnerschrëft splice Array.prototype.splice huet.

Hien zitt aus der vill deleteCount Komponente, mat Index ufänken Ufank. Wann Dir méi wéi zwee Argumenter Passe, all Kierzunge Argumenter an der vill sinn am Plaz vun der Evaluatioun arrangéiert. Wann ufänken Minus ass, bei deem den Index op eng wäert de Réckzuch op d'Längt + ufänken selwecht ginn. Zréckgoen op déi vill Erfindungen Elementer statt.

An Tatsaach, de splice Method benotzt, ass et méiglech Komponente vun der Mëtt vun enger vill ze ewechzehuelen oder all Zuel iwwerall am vill Foto.

Am einfach Ausdrock, wann et néideg ass de Volet mam Index ze läschen ech, muss de vill splice Method mat Parameteren ze Ufro ech an 1.

Am Prinzip, ass déi zweet Optioun um splice Method net obligatoresch, mä d'Behuele vun der Funktioun mat een Argument fir all Browser ass anescht.

Zum Beispill, am Firefox, Opera an de leschten Variatiounen, all déi Detailer virum Enn vun der vill gëtt am Safari an Sexualmoral geläscht ginn.

keen eenzege Volet ass am IE éliminéiert. Déi éischt Variant ass onméiglech d'Behuele vun Opera zu Viraus - gëtt ee Punkt mat Index ufänken geläscht ginn - 1. Dofir ass et ëmmer néideg Dës Method op d'mannst zwee Voleten ze weiderginn.

den Tastekombinatiounen

Natierlech, Léieren Javascript, enger Associatioun flamenden Ofgrond, wéi virdrun erwähnt, sollt Dir och net präsentéieren ginn. Dëst ass eng mythologesch Vue vun der Informatioun (den Interface fir den Daten Buttek), déi vun iwwerdribblen Pair vu Ënnerstëtzung, souwéi Läschen an Sich vun de Schlëssel hien huet misse Pair vun der Form "(Schlëssel, Wäert)" an der Operatioun ze retten erlaabt:

- hei (Schlëssel).

- ASCHREIWEN (Wäert, Schlëssel).

- LESCHEN (Schlëssel).

Et gëtt ugeholl, datt an enger Associatioun, vill kann net déi zwee Puer mat ähnleche Schlësselen ze retten. An e puer vun k + VV ass de Wäert mat Schlëssel K assoziéiert. Semantics an hei mat der uewen Operatiounen zu verschiddenen Affinitéite vun esou flamenden Ofgrond vläicht anescht ginn.

Sou fannt Operatioun (Schlëssel) e Wäert mat enger bestëmmter Schlëssel, oder eng spezifesch Objet UNDEF verbonne preparéieren, Bedeitung, datt de Wäert mat enger bestëmmter Schlëssel assoziéiert, sitt. Zwee aner Aktiounen zréck nët (ausser fir Donnéeën iwwer ob der Operatioun war erfollegräich).

Generell, wat vun Interface, Associatioun, da kënnt déi als einfach vill geduecht ass, als Hellef bestinn kann net nëmmen ganz Zuelen awer aner Zorte a Wäerter applizéiert ginn - zum Beispill, Linnen.

Iwwregens, Ënnerstëtzung fir esou flamenden Ofgrond sinn behandelt ginn et vill héich-Niveau programméiere Sproochen wéi PHP, Perl, Rubin, Python, Tcl, Javascript an anerer. Fir Sproochen, datt kee gebaut-an Handwierksgeschir ze schaffen mat enger Associatioun flamenden Ofgrond hunn, hunn eng enorm Zuel vun virkënnt an der Form vu Bibliothéiken.

E Beispill vun enger Associatioun, vill kann als Telefonsinformatiounsservice déngen. An dësem Ausdrock, ass de Wäert Formatioun "F. IO + E ", an de Schlëssel - d'Telefonsnummer. One Telefonsnummer ass ee Meeschter, mä eng Persoun MÉI Zuelen eege kann.

assoziéiert Extensioun

Et soll feststellen, datt déi gutt-bekannt Betriebsdauer och déi folgend:

  • ALL - «Spadséiergank» op all rett Puer.
  • KLOR - all Entréen ze läschen.
  • Min - e hien huet misse mat der niddregsten Schlëssel Wäert ze fannen.
  • MAX - e hien huet misse mat der gréisst Schlëssel Wäert ze fannen.

An de leschten zwee Fäll musst Dir Verglach Effekt ze iwwert d'Schlësselen uginn.

Realisatioun vun enger Associatioun flamenden Ofgrond

Et gi vill verschidde Affinitéite vun der Associatioun, vill. De stäerkste gemeinsam Ëmsetzung kann op eng einfach vill aner Komponente sinn der Puer (Wäert Schlëssel) baséiert ginn. Fir d'Sich Funktiounen Vitesse an, kënnt Dir Komponente vun der vill vun engem Schlëssel fannen Rendez an ëmsetzen benotzt en Duebelstäresystem Sich. Mä et gëtt der zevill Zäit méi néideg eng nei hien huet misse bis Artikel, wéi et muss "Auslänner" déi vill Komponente dass an engem eidel Zell wossten e frësch Rekord fir Pak.

Déi bescht bekannt Ëmsetzung, baséiert op verschiddene Sich Beem. Zum Beispill, an engem typesch Liesraum STL C ++ Sprooch Woch Kaart ass op der Grondlag vun schwaarz Mahagony ëmgesat. An Rubin, ënnerstëtzen, Tcl, benotzt Python een Typ vun mä awer och Dëscher. Et ginn aner Ëmsetzung.

Am Allgemengen, all Ëmsetzung huet seng eegen Virdeeler an Nodeeler. Et ass wichteg, datt all dräi Operatiounen iwwert der Moyenne erfëllt waren, an am schlëmmste Period vun nuance iwwer (Logbuch), woubäi N - aktuell Nummer par ze retten. Fir onse Sich Beem (och schwaarz a rout Beem), ass dës Konditioun zefridden.

Et ass bekannt datt an Affinitéite baséiert op mä awer och Dëscher, der Moyenne Zäit als D definéiert ass (1), déi wéi an der op der Sich Beem baséiert Aktiounen besser ass. Natierlech, heescht dat net eng héich-Vitesse Leeschtung vun eenzelnen Operatiounen garantéieren: ASCHREIWEN Aktioun Zäit am schlëmmste Fall, well O (n) mat. ASCHREIWEN Prozess ass fir eng laang Zäit gesuergt wann der Flicht Verhältnis den héchste Punkt erreecht, an et ass de Besoin der mä awer och Dësch Index ze rekonstruéieren.

Iwwregens, mä awer och dës Aussoen schlecht, datt op dëser Basis ass et onméiglech rapid zousätzlech Aktioun MAX, Min zu Leeschtunge, an en Algorithmus fir Sich all rett Puer fir eroffällt oder Elterendeel Schlësselen.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 lb.atomiyme.com. Theme powered by WordPress.