Нажмите "Enter", чтобы перейти к содержанию

Facebook láthatósági beállítások

Blokkok, mint a hatókör. Változók Legyen és CONST

A program jobb stabilitása és biztonsága érdekében, valamint a fejlesztés és a további támogatás egyszerűsítése érdekében a programkódot a legkevésbé kiváltságok elvén kell megszervezni. Ez azt jelenti, hogy a kódot kell megszervezni, oly módon, hogy minden egyes része a programnak meghatározott feladatot teljesítő számára hozzáférést kell biztosítani az ilyen információk és erőforrások, amelyek minimálisan szükségesek a sikeres teljesítse működik cél.

Ez a fogalom a láthatóság nak, amely lehetővé teszi, hogy behatárolja a hozzáférést bizonyos részeinek a program változók, eljárások vagy más utasítást, hogy ezek a részek csak a szükséges minimális forrásokat feladatukat.

Az ES6 szabványos jellemzők felszabadulása előtt a legkisebb egység volt, korlátozza a hatókörét. De elvét követve a legkisebb kiváltságokat, meg kell különböztetni hozzáférést változók egyes részein a kódot az azonos funkciójú.

A következő okok lehetnek:

  • A belső változóhoz való hozzáférés megsérti a kódot a kódban.
  • A belső változó nem kapcsolódik a láthatóság külső területére.
  • A kódblokknak szomszédos lehet, akik is örömmel használják ugyanazt a változó nevet.
  • A belső blokkban használni kívánt változó neve már részt vesz az egyik szülőblokkjában.

Például:

Ezekre a célokra azonnal hívják funkcionális kifejezéseket általában használt — életedrõl (AZONNAL hivatkozni FUNCTION EXPRESSION), amelyek funkció, ami után azonnal azonosították. További információ a funkciókról és a típusaikról a kurzus következő részeiben kerülnek. Most csak egy klasszikus változatot tartson egy ilyen funkcionális kifejezésre:

Ezért az előző példa az ES6 szabvány felszabadítása előtt így néz ki:

Az ES6 kimenettel az utasítások blokkolása most is korlátozhatja a hatókörét. Csak ellentétben azokkal a funkciókkal, amelyek korlátozzák a változók hatókörét bármilyen módon (keresztül, és), az utasítások blokkja korlátozza a láthatóság körét csak olyan változók esetében, amelyeket a .

Ha a blokkban változó változó, akkor a blokkon kívül lesz elérhető, és az a funkcióra korlátozódik, amelyben ez a készülék található.

Itt, annak ellenére, hogy a változó deklarált blokk, az elérhető lesz, és azon kívül, belül a teljes funkció, hiszen deklarált a kulcsszó .

Az ES3 szabványból származó láthatósági blokkterület egyetlen példája:

  • Az elavult és nem használt utasítás. További információ az angol nyelven olvasható. Ez az utasítás nem tudja megérteni a részleteket itt, ennek az utasításnak a használata a nagyon megjelenésből elutasította, mivel zavart okozott, a kód és a romlás hibái.
  • A hibakezelés kialakításának blokkja

    Amint látja, csak a blokkban létezik, és a hibát dobja, ha máshol máshol hivatkozik.

Változók

Ha a változót deklarálni a használati blokkot a kulcsszó, a jelen változó korlátozódik erre a bizonyos blokk utasítást, amelyben megállapították.

Vagy

Amellett, hogy az utasításokat blokkokat, amelyek részei a JavaScript tervez, mint például, és mások, akkor létrehozhat explicit külön blokkokat, amelyek nem részei semmilyen tervez. Néha az ilyen létrehozását explicit blokkok fejlesztésének elősegítése és támogatása a kódot, ami még inkább nyilvánvalóvá ahol a változók kapcsolódnak, és ahol — nem.

Rendszeres blokkot hozhat létre, amely egyszerűen csak egy párot is használhat, ahol ez az operátor érvényes szintaxis. Ebben az esetben egy explicit egységet készítettünk az üzemeltető belsejében, amely akkor könnyebben mozoghat az egész egységként a Refactoring során, anélkül, hogy megváltoztatná a környező operátor pozícióját és szemantikáját .

Egy másik példa, amelyben a legjobb oldalról — egy ciklus esetében .

A cikluson keresztül bejelentett változó nemcsak a ciklus testére korlátozódik, hanem minden egyes iterációban az előző vége óta új értéket kapnak.

Az ilyen iteratív kötés írható:

Az ilyen pre-iteratív kötés fontossága világosabbá válik, ha a lezárási mechanizmus megértésre kerül.

Mivel a segítségnyújtás hirdetései nem voltak olyan régen, és amikor az ES6 kijárat előtt írt kóddal dolgozott, ahol az összes változót bejelentették, fontos megismerni a láthatósági területük jellemzőit és megérteni a különbséget. Például különös figyelmet kell fordítani, ha egy meglévő kódot változó .

Példa:

Ez a kód nagyon könnyű, hogy kevésbé befektetett:

De vigyázzon az ilyen változásokra, amikor blokkkövető változókat használ:

Tekintsük a következő példát:

Milyen változók léteznek csak az üzemeltetőn belül, és amelyek csak a cikluson belül vannak ? És milyen változók állnak rendelkezésre mindenhol ebben a kódban?

Válasz: Az üzemeltető változó blokkkövető és, és a ciklus változókat tartalmaz és . A változó mindenhol elérhető .

Változók

Amellett, hogy az ES6 egy kulcsszót képvisel, amely a láthatóság változó blokk területét is hozza létre, de amelynek értéke rögzített (állandó). Az érték későbbi megváltoztatására irányuló kísérlet eredménye.

A változónak kifejezett inicializálási értéknek kell lennie. Ha szüksége van egy állandó értékkel, akkor azt egyértelműen inicializálása ezzel az értékkel.

A kijelölt változók nem teszik lehetővé, hogy hozzárendeljék a változó új értékét, de nem korlátozzák az értékek változását. Más szóval, nem változtatja meg a változó változatlan vagy állandó értékét, de csak tiltja a korábban bejelentett változó hozzárendelési műveletét. Például, ha a változó értéke az objektum, akkor módosítható.

Egy átláthatóbb és érthetőbb kódért érdemes használni azokat a változókat, amelyek később nem fognak megváltoztatniuk és nem változhatnak. Vagyis használja azt egy olyan eszközként, amely tükrözi az Ön szándékát, hogy konstans legyen, és lehetővé tegye a másik fejlesztő számára, hogy megértse az állandó jellegét és célját.

Az egyik hatályú változók ismételt nyilatkozata

Megjegyzendő, hogy a változók, és ellentétben változók is bejelentette, csak egyszer ugyanazon a területen a láthatóságot. Amikor újra kijelöl, hiba lép fel (a «név» azonosítót már bejelentették). Például

Bár a láthatóság egyik területén többször is ugyanazokat a változókat jelöl ki, egy rossz gyakorlat, az ilyen kód nem okoz semmilyen hibát, és ezek a hirdetések eredményeképpen ugyanazt a változót határozzák meg .

A változók vagy a következő kód hibákat okoz

Amikor nyilvánításáról változók és ilyen ellenőrzés, a létezését változók azonos azonosítóval, végezzük az összes változót az ugyanazon a területen a láthatóság, még ha azokat bejelentették keresztül

Vagy funkcióként

A blokk hatókörével korlátozott funkciók

A módban a funkció bejelentett a blokkon belül is van egy hatálya korlátozva ebben a blokkban.

Például:

Vagy feltételes kialakítás esetén:

Ebben az esetben a funkcióhívás hibát okoz a blokkon kívül, ahol bejelentették, ez a funkció nincs meghatározva. Szigorú mód nélkül ez a kód hibák nélkül fog működni, mivel a funkciók nyilatkozata nem korlátozódik az utasítások blokkjaira.

Az előző példa megfelelő működéséhez szigorú módban funkcionális kifejezéseket kell használnia:

A blokk hatóköre nem használható a láthatóság funkcionális területének teljes helyettesítésére . Érdemes használni mindkét hatókört: funkcionális és blokk, a megfelelő helyeken a legjobb, olvashatóbb / szervizelt kód létrehozásához.

Részvény

Twitter Facebook LinkedIn

Hibát észlelt, vagy valamit szeretne hozzáadni a dokumentációhoz? Szerkessze ezt az oldalt a github-on!

Комментарии закрыты, но обратные ссылки и pingbacks ещё работают.