babs: Konstruktor javascript

huhu,
hab da ein Problem, kann mir irgendwer bitte helfen. Ich habe leider keine Ahnung, warum das folgnde nicht funktioniert

<html>
<head><title>Konstruktor</title>

<script language="javascript"><!--

function person (vorname, nachname, geburtsjahr)

{
this.vorname = vorname;
this.nachname = nachname;
this.geburtsjahr = geburtsjahr;
this.alter = alter;

}

function rechnung (person)
 {
var jetzt = new Date ();
var jahr = jetzt.getYear();
var gj = person.geburtsjahr;

Var alter = jahr - 1900 - gj;
return alter;

}

function personen ()
{
var person1 = new person ("Hirsch" ,"kuh", 1999 );
var person2 = new person ("Wild", "Sau", 1998 );
person1.rechnung();
person2.rechnung();

if (person1.alter > person2.alter )
{
document.writeln (person1.Vorname);

}
else

{
document.writeln (person2.Vorname);

}

}

//-->
</script>
<noscript>diese seite verwendet javascript</noscript>
</head><body onLoad="personen()">
</body>
</html>

  1. Mahlzeit,

    hab da ein Problem, kann mir irgendwer bitte helfen. Ich habe leider keine Ahnung, warum das folgnde nicht funktioniert

    <script language="javascript"><!--

    Verwende NICHT das language-, sondern das http://de.selfhtml.org/javascript/intro.htm#javascriptbereiche@title=type-Attribut. Der Kommentar ist überflüssig.

    function rechnung (person)
    {
    var jetzt = new Date ();
    var jahr = jetzt.getYear();
    var gj = person.geburtsjahr;

    Var alter = jahr - 1900 - gj;
    return alter;

    }

    Du definierst hier eine Funktion, der Du beim Aufruf einen Parameter übergeben möchtest.

    person1.rechnung();

    Ich wüsste nicht, dass das Objekt "person1" eine Methode "rechnung()" hat. Wo soll die definiert sein?

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. huhu ,
      danke für die antwort, also erstmal lösch ich dann person hinter rechnung weg und kannst mir noch sagen, wie ich dann die verknüpfung hinbekomme , das ich die funktion rechnung auf die einzelnen personen anwenden kann?

      1. Hallo!

        Ich habe schon ewig nicht mehr mit JavaScript gearbeitet, aber ich vermute stark, dass EKKi dir sagen wollte dass dein Script nur rechnung(person) kennt, du aber ein rechnung() angibst. Dass das zwei verschiedene Dinge sind, ist offensichtlich.

        Also übergebe eine Person oder lass die Methode Rechnung nicht auf eine Person warten.

        ciao, Lukas

        --
        Nach einem Korrspondentenbericht der New York Times aus der umkämpften Stadt, wurden zur „Ausschaltung eines einzigen feindlichen Scharfschützen mehrere 500-Pfund-Bomben, 35 Artilleriegranaten des Kalibers 255, zehn Schüsse aus der Abrams-Panzerkanone sowie 30 000 Patronen leichter Munition benötigt”. „Die Gebäude waren daraufhin Ruinen”, schreibt die New York Times, „aber der Scharfschütze schoss weiter...”
        1. ok,

          entweder ich steh hier gewaltig auf dem schlauch oder ich kapier gar nix mehr, wie soll ich eine person übegebn, das mach ich doch indem ich ihm zwei neue personen erstelle? könnt ihr mir evtl irgendein beispiel geben, wie ich das anders schreiben kann?

  2. Hallo,

    hab da ein Problem, kann mir irgendwer bitte helfen. Ich habe leider keine Ahnung, warum das folgnde nicht funktioniert

    die grossen "V" machen Ärger bei "Var" und ".Vorname"

    <html>
    <head><title>Konstruktor</title>

    <script language="javascript"><!--

    function person (vorname, nachname, geburtsjahr)

    {
    this.vorname = vorname;
    this.nachname = nachname;
    this.geburtsjahr = geburtsjahr;
    this.alter = alter;

    }

    function rechnung (person)
    {
    var jetzt = new Date ();
    var jahr = jetzt.getYear();
    var gj = person.geburtsjahr;

    Var alter = jahr - 1900 - gj;
    return alter;

    }

    wenn rechnung() eine Methode von person werden soll, könnte es so aussehen:

      
    function person (vorname, nachname, geburtsjahr)  
    {  
     this.vorname = vorname;  
     this.nachname = nachname;  
     this.geburtsjahr = geburtsjahr;  
     this.alter = 999;  
     this.rechnung= function() {  
      var jetzt = new Date ();  
      // var jahr = jetzt.getYear();  
      // var gj = this.geburtsjahr;  
      // this.alter = jahr + 1900 - gj;  
      this.alter=jetzt.getFullYear() - this.geburtsjahr;  
     }  
    }  
    
    

    Gruß plan_B

    --
         *®*´¯`·.¸¸.·