David Hörpel: Wie würdet ihr das realisieren?

Hallo!

Folgende Situation:

Um bei einem lateinischen Übersetzungstext die Satzteile zu markieren, möchte ich gerne die Farbe und ein Satzteil (z.B. Verb) auswählen (in dieser reihenfolge).
Die Parameter werden per Variable an die Funktion übergeben, soweit alles kein Problem.
Das sähe das ungefähr so aus:

function farbe(x)
{alert(x); }

function satzteil(y)

{alert(y);}

Klappt auch wunderbar. Um die Satzteile zu markieren (wird dann in der Funktion satzteil() ausgeführt), brauche ich noch die Variable x, die in der Funktion farbe() vorkommt. Leider habe ich keine Idee, wie ich das Ergebnis so zwischenspeichern kann, dass satzteil() auf die Variable x zugreifen kann.
Kann mir da einer helfen?

Gruß David

Ps: Ich weiß, dass ich schon ähnliche Fragen heute im Forum gestellt habe. Diese bezogen sich jedoch auf spezifische Probleme und erwiesen sich als nicht durchführbar für meine Zwecke. Hier geht es eher um einen Tipp, wie ich das insgesamt aufziehen kann, deswegen der neue Thread.

  1. Hallo!

    Folgende Situation:

    Um bei einem lateinischen Übersetzungstext die Satzteile zu markieren, möchte ich gerne die Farbe und ein Satzteil (z.B. Verb) auswählen (in dieser reihenfolge).

    Farbe dürfte kein größeres Problem sein, aber Satzteil? Hast Du Dir schonmal überlegt, wieviel Aufwand das wäre? Latein ist zwar eine recht "einfache" Sprache, aber trotzdem wäre es ein verdammt hartes Unterfangen.

    Klappt auch wunderbar. Um die Satzteile zu markieren (wird dann in der Funktion satzteil() ausgeführt),

    Diese Funktion würde ich gerne mal sehen.

    brauche ich noch die Variable x, die in der Funktion farbe() vorkommt. Leider habe ich keine Idee, wie ich das Ergebnis so zwischenspeichern kann, dass satzteil() auf die Variable x zugreifen kann.

    So ganz genau kann ich Dir da nicht folgen. Meinst Du global gültige Variablen?

    var globaleVariable="Hello World!";

    function showOne(){
      var lokaleVariable = "Hallo Welt!";
      alert("Global:" + globaleVariable);
      alert("Lokal:"  + lokaleVariable);
    }
    function showTwo(){
      var lokaleVariable;
      alert("Global:" + globaleVariable);
      alert("Lokal:"  + lokaleVariable);
    }
    function showThree(_X){
      globaleVariable = _X;
    }
    function showFour(){
      showThree("Allô Monde!");
      alert("Global:" + globaleVariable);
    }

    so short

    Christoph Zurnieden

  2. Hi,

    Um die Satzteile zu markieren (wird dann in der Funktion satzteil() ausgeführt), brauche ich noch die Variable x, die in der Funktion farbe() vorkommt. Leider habe ich keine Idee, wie ich das Ergebnis so zwischenspeichern kann, dass satzteil() auf die Variable x zugreifen kann.

    irgendwie sieht mir das aber immer noch nach Deinem gestrigen Problem aus - das nicht nachvollziehbar ist.
    Wenn Du eine Variable global erzeugst steht sie Dir in Javascript immer und ueberall zur Verfuegung - auch innerhalb von Funktionen

    var x = 1
    function alarm () {alert(x)}
    alarm();

    ergibt demnach: 1

    Wenn Du komplexere Daten hast benutze ein Array, fuer das hinsichtlich des Scopes aber das Gleiche gilt.

    Wenn Du nicht mit globalen Variablen arbeiten willst baue Dir ein Objekt, das mit einer Methode eine ID und Wert annehmen kann, mit einer anderen Dir den Wert per Uebergabe der ID zurueckgibt.

    Gruesse, Joachim

    --
    Am Ende wird alles gut.