login  Naam:   Wachtwoord: 
Registreer je!
 Nota's op tutorial:

Tutorials > Javascript > Objecten, properties en prototypes
Pagina:

Reacties op de tutorial Objecten, properties en prototypes


Offline  Thomas
Gepost op: 03 januari 2006 - 17:07
Moderator

Het laatste voorbeeld van onderdeel 4 snap ik even niet?
  1. function getNaam() {
  2. alert(this.naam);
  3. }
  4. function getLeeftijd(leeftijd) {
  5. alert(this.leeftijd);
  6. }
  7. function mens(naam, leeftijd) {
  8. this.naam = naam;
  9. this.leeftijd = leeftijd;
  10. this.getNaam = getNaam;
  11. this.getLeeftijd = getLeeftijd;
  12. }


Als je een mens maakt worden er zaken ge-alert?

Of koppel je op die manier de functies (methoden) aan de functie mens (de class)?

Offline  nemesiskoen
Gepost op: 03 januari 2006 - 17:12
Gouden medaille

PHP expert


edit: Het tweede wat je zegt: zo koppel je ze aan elkaar.
Ik zal het even omzetten in php code. Dit doet hetzelfde:

  1. <?php
  2. class mens {
  3. var $naam;
  4. var $leeftijd;
  5. function mens($naam, $leeftijd) {
  6. $this->naam = $naam;
  7. $this->leeftijd = $leeftijd;
  8. }
  9. function getNaam() {
  10. echo $this->naam;
  11. // in javascript dan alert
  12. }
  13. function getLeeftijd() {
  14. echo $this->leeftijd;
  15. }
  16. }
  17. ?>


De functies (methodes) worden niet 'aangeroepen' maar enkel 'aangemaakt' en _gebonden_ aan 'mens', door de '=' operator.

Dit kan slechts worden aangeroepen door:
  1. blaat = new mens;
  2. blaat.getNaam();


Ook nog interessant om te vermelden is dat je 'mogelijke' argumenten kan meegeven. Dit zal ik ook nog in de tutorial zelf verwerken. Het gaat zo:

  1. function blaat(foo, bar) {
  2. this.foo = foo || "";
  3. this.bar = bar || "bar";
  4. }
  5. // als foo een waarde heeft word deze waarde genomen, anders de waarde achter ||
  6. // idem met bar
  7. b = new blaat('dit is foo');
  8. alert(b.foo);
  9. // 'dit is foo'
  10. alert(b.bar);
  11. // 'bar'
  12. b.bar = "dit is bar";
  13. alert(b.bar);
  14. // 'dit is bar'

Pagina:

Enkel aanvullende informatie is welkom. Geen prijzende of afkeurende reacties.
 
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.044s