Johdanto JavaScriptiin
JavaScriptin lyhenne on myös se, että JS on korkean tason tulkittu ohjelmointikieli. JavaScript on yksi kolmesta Internetin pääteknologiasta. JavaScriptin avulla voidaan rakentaa muuta interaktiivista verkkosivua kuin staattisia verkkosivuja. Suurin osa verkkosivustoista käyttää kehittämiseen JS: tä ja suurimmissa selaimissa on JavaScripti. JavaScript on kevyt, heikosti kirjoitettu, prototyyppipohjainen tulkittu ohjelmointikieli, jolla on olosuhteet. JavaScriptiä käytetään web-sovellusten asiakaspuolen kehittämiseen, se sisältyy HTML-tiedostoon tai siihen viitataan HTML-tiedostossa siten, että koodi esitetään selaimessa. Nykyään JavaScriptiä ei käytetä vain asiakaspuolen kehittämiseen, vaan myös palvelinpuolen ohjelmointiin. Saatavilla on erilaisia kehyksiä, jotka on rakennettu JavaScriptin avulla, kuten Node.js. Node.js: lla on paljon moduuleja mikropalvelujen, sovellusliittymien ja tietokantayhteyksien kehittämiseen. JavaScript-asiakaspuolen mekanismi tarjoaa monia etuja perinteisiin CGI-skripteihin verrattuna. JavaScriptiä voidaan käyttää käyttäjien käynnistämien tapahtumien, kuten painikkeiden napsauttamisen, navigointien, ponnahdusviestien, jne. Perusteella, ja sitä käytetään myös asiakaspuolen validointiin. Voit esimerkiksi vahvistaa lomakkeen kentät, kuten sähköposti, salasana jne., ennen kuin lähetät sen verkkopalvelimelle.
Onko JavaScript-olio-suuntautunut kieli?
Aihe siitä, onko JavaScript puhtaasti esinekeskeistä kieltä vai ei, on aina keskusteltavissa. Joten nyt aiomme selvittää, että se on Javascript Object Oriented koska jotkut sanovat, että se ei ole Object Oriented koska sillä ei ole luokkia eikä se voi toteuttaa OOP-käsitteitä kuten perintö tai kapselointi ja jotkut sanovat että se on Object Oriented Language. Ennen kuin keskustelemme tästä JavaScript-oliokeskeisestä aiheesta, tulisi ymmärtää, mikä tekee ohjelmointikielestä objektiorientoidun ohjelmointikielen?
Objektisuuntautuneilla kielillä on muutama tärkeä ominaisuus:
-
polymorfismi:
Kohteen kyky olla monissa muodoissa. Esimerkiksi, toiminto voidaan ylikuormittaa samalla nimellä, mutta eri parametreilla.
-
kapselointi:
Sitovat kaikki tiedot ja toiminnot yhdessä ja pitävät ne luokassa.
-
Perintövero:
Lapsiluokka voidaan johtaa vanhempainluokasta kaikilla vanhemmaluokan ominaisuuksilla ja joillakin omilla ominaisuuksillaan.
Nämä yllä mainitut kolme periaatetta muodostavat perustan oliokeskeiselle kielelle.
Joten, JavaScript ei ehkä noudata tarkkaa oliopohjaisten periaatteiden mallia, mutta JavaScriptillä on erilaisia tapoja toteuttaa OOP.we voi osoittaa, kuinka JavaScript noudattaa oliopohjaisia periaatteita ottamalla esimerkkejä:
kapselointi:
Kapseloinnin idea on, että esineen tietoihin ei tulisi päästä suoraan, vaan siihen tulisi päästä joidenkin menetelmien avulla. Mutta JavaScript: ssä ei ole käsitettä luokasta ja objekteista, jotka se toteuttaa koteloinnin kahdella tavalla, ts. Function Scope and Closure
1) Toiminta-ala:
Tämä ei ole muuta kuin funktioiden sisällä olevien muuttujien julistaminen. Joten muuttujien laajuus on rajoitettu vain toimintoihin, ja muut objektit eivät pääse käsiksi muuttujiin. Otetaan esimerkki funktion laajuudesta.
toimivuustesti()
(
var arvo = “Hei!”;
hälytys (arvo) // “Hei!”;
)
hälytys (arvo) // virhe; arvo ei ole käytettävissä toiminnon ulkopuolella.
2) Sulkemiset:
Sulkeminen on sisäinen laajuus, jolla on pääsy muuttujiin, jotka on ilmoitettu sen lohkon ulkopuolella, jopa sen jälkeen, kun nämä muuttujat ovat pudonneet soveltamisalasta. Vaikka kohteen menetelmät eivät pääse muihin paikallisiin muuttujiin, sisäisellä esineellä on pääsy vanhemman toimintonsa muuttujiin. Otetaan esimerkki ymmärtää tämä.
var person = (
var name = “JavaScript”;
return (
setName : function(value)(
name = value;
),
getName : function()(
return name;
)
);
);
alert(person.name) //JavaScript
person.setName(“Java”)
alert(person.name) //Java
Joten tällä tavoin voimme julistaa sisäiset objektit tai menetelmät tietojen piilottamiseksi ja niihin voidaan päästä vanhemmiobjekteja käyttämällä.
Perintövero:
JavaScript tukee perintöä prototyyppisen perimän kautta kutsutun käsitteen avulla, jonka avulla JavaScript-objekti voi hankkia kaikki tai jotkin ominaisuudet muista kohteista tai vanhemmista kohteista.
1) Prototyyppi:
JavaScriptiä kuvataan prototyyppipohjaisena kielenä, jotta perintöobjektilla voi olla prototyyppiobjekti, joka perii menetelmiä ja ominaisuuksia muilta objekteilta. Objektien prototyyppiobjektilla voi olla myös prototyyppiobjekti, joka perii menetelmät ja ominaisuudet vanhemmalta esineeltään ja niin edelleen, tätä kutsutaan prototyyppiketjuksi.
Yllä oleva kuva näyttää kaikki luotavan objektin ”eläin” ominaisuudet. Joten "nimi" ja "tyyppi" ovat kohteen "eläin" ominaisuuksia ja ominaisuudet, kuten valueOf, toString, toLocaleString jne., Ovat emoobjektin ominaisuudet, jotka peritään eläinobjektille. Katso alla olevaa kuvaa, joka näyttää pääobjektin ominaisuudet ominaisuusprotoa käyttämällä.
polymorfismi:
Poly tarkoittaa ”monia”, morfismi tarkoittaa “muotoja”, polymorfismi on vain muuta muotoa. JavaScript-muodossa polymorfismi saavutetaan geneerisellä, ylikuormituksella, rakenteellisella alatyypittelyllä.
1) Geneeriset tuotteet (parametrinen polymorfismi):
Tämä sanoo, että muuttujan tyypillä ei ole mitään merkitystä, ne ovat vaihdettavissa. Funktion, joka määrittelee yhden tai useamman parametrisen polymorfisen tyypin parametrit, ei tarvitse tietää mitään tyypeistä, sen tulisi käsitellä niitä kaikkia samoina, koska se voi mukautua mihin tahansa tyyppiin. Katso alla olevaa esimerkkiä
const data = x => y => y.concat (x);
data (3) ((1, 2)); // (1, 2, 3)
data (“c”) ((“a”, “b”)); // (“a”, “b”, “c”)
2) Ylikuormitus (ad-hoc-polymorfismi):
Ylikuormitus JavaScript-sovelluksissa saavutetaan käyttämällä epäsuoraa polymorfismia. Ad-hoc-polymorfismi on eräänlainen polymorfismi, jossa polymorfisia funktioita voidaan soveltaa monentyyppisiin argumenteihin, koska polymorfiset funktiot voivat osoittaa erilaisten heterogeenisten toteutuksien määrän argumenttityypeistä riippuen. Katso alla mainittu esimerkki
+ -Operaattoria käytetään monella tavalla, kuten numeroiden lisäämiseen, merkkijonojen ketjuttamiseen jne.
1 + 2 = 3
1, 2 + 2, 3 = 3, 5
“Java” + ”Script” = “JavaScript”
3) Rakenteellinen alatyypitys (rakenteellinen polymorfismi):
Rakenteellinen polymorfismi sanoo, että eri tyypit ovat ekvivalentteja, esimerkiksi jos yhdellä tyypillä on kaikki toisen tyypin ominaisuudet ja joitain lisäominaisuuksia (seuraa samaa rakennetta)
Const paino = (arvo: 100, tiedot: true)
Vakionopeus = (arvo: 200, tiedot: väärä, foo: (1, 2, 3))
Nopeutta pidetään painon alatyyppinä.
Johtopäätös - Onko Javascript kohdeorientoitunut?
Kuten keskustelimme aiheesta on Javascript Object Oriented, Joten nyt voimme päätellä, että JavaScript on olio-suuntautunut kieli. Vaikka siinä ei ole todellisia luokkia, se on silti oliokeskeinen kieli, koska se noudattaa oliokeskeisten periaatteiden ydinkonsepteja. Joten kieli voi olla objektiorientoitunut, jos se tukee objekteja jopa ilman luokkia.
Suositellut artikkelit
Tämä on opas Is Javascript Object Oriented -tapahtumaan. Tässä olemme keskustelleet Javascriptin ja oliokeskeisen peruskäsitteistä ja ominaisuuksista. Voit myös tarkastella seuraavia artikkeleita:
- JavaScript vs. VBScript
- JavaScriptin käyttö
- JavaScript vs. AngularJS
- JavaScript vs Node JS
- Kattava opas Object Java -sovellukseen
- Kohde Pythonissa
- Esimerkkejä ja kuinka Generics toimii C #