JavaScript objektin metodit

Esimerkki

var henkilö = {
  etunimi: "Bill",
  sukuNimi : "Gates",
  id       : 648,
  fullName : function() {
    return this.firstName + " " + this.lastName;
  

Kokeile itse

JavaScript-metodi

JavaScript-metodi on toiminto, jonka voi suorittaa objektilla.

JavaScript MetodiSisältääFunktion määrittäminenominaisuudet.

ominaisuus arvo
etunimi Bill
sukuNimi Gates
ikä 62
silmänväri sininen
fullName function() {return this.firstName + " " + this.lastName;}

Metodi on funktio, joka tallennetaan objektin ominaisuudeksi.

this avainsanaksi

JavaScriptissä sitä kutsutaan this Asiaa, joka tarkoittaa objektia, joka omistaa kyseisen JavaScript-koodin.

this arvoa, kun sitä käytetään funktiossa, se on "omistava" kyseisen funktion objekti.

Huomaa this Ei ole muuttuja. Se on avainsana. Et voi muuttaa this arvoa.

Kutsu objektin metodia

Luo objektin metodi seuraavalla syntaxilla:

methodName : function() { Koodirivi 

Vieritään objektin metodin kutsun seuraavalla syntaxilla:

objectName.methodName()

Sinun tapasi kuvata fullName() on henkilö-objektin metodi, ja fullName on ominaisuus.

fullName-ominaisuus suoritetaan funktiona, kun sitä kutsutaan ()

Tässä esimerkissä haetaan person-objektin fullName() Metodi:

Esimerkki

nimi = henkilö.kokoNimi();

Kokeile itse

Jos käytät fullName ominaisuusJos funktion määrittämisessä ei käytetä ()Funktion määrittäminen:

Esimerkki

nimi = henkilö.kokoNimi;

Kokeile itse

Sisäänrakennettujen metodioiden

Tässä esimerkissä käytetään String-objektin toUpperCase() Metodi, joka muuntaa tekstin isoksi kirjaimiksi:

var viesti = "Hei maailma!";
var x = message.toUpperCase();

x-arvon arvo, kun yllä oleva koodi suoritetaan, tulee olemaan:

HELLO WORLD!

Lisää uusi metodi

Metodien lisääminen objektiin tehdään rakentajafunktiolla:

Esimerkki

function person(firstName, lastName, age, eyeColor) {
    this.firstName = firstName;  
    this.lastName = lastName;
    this.age = age;
    this.eyeColor = eyeColor;
    this.changeName = function (name) {
        this.lastName = name;
    

changeName()-funktio asettaa name-arvon person-objektin lastName-ominaisuudelle.

Nyt voit kokeilla:

myMother.changeName("Jobs");

Kokeile itse

JavaScript selvittää, mihin person viittaat, käyttämällä myMother 'korvaamalla' this.