Frank Hell: Parameter als Verweis auf eine Variable?

Hallo!

Folgendes Problem:

Ich möchte auf eine Variable verweisen, indem ich einen Parameter übergebe:

var textA_de = "Deutsch"
var textA_en = "English"

alert(setRightString(textA));

function setRightString (myString) {
 var stringLang = myString;
 stringLang = stringLang + "_" + getDocLang();
 return stringLang;
}

// Funktion: Gibt die Sprache des Dukuments über das 'xml:lang'-Attribut aus
// Bei Fehlern, wird 'de' als Standard zurückgegeben:
function getDocLang() {
 var lang = "de";
 try {
  lang = document.getElementsByTagName("html")[0].getAttribute("xml:lang");
  lang = lang.substring(0,2).toLowerCase();
  return lang;
 }
 catch (err) {
  return lang;
 }
}

Aber 'alert' gibt mir logischerweise "textA_de" zurück und nicht "Deutsch". Wie kann man das anders machen und 'textA_de' als Verweis auf diese Variable definieren?

  1. Hi,

    Ich möchte auf eine Variable verweisen, indem ich einen Parameter übergebe:

    nein. Du möchtest Dir ein sinnvolles Datenmodell überlegen. Eine Variable names "textA_de" ist eine Variable names "textA_de" und hat *nichts* mit irgend etwas zu tun, das "textA" heißt. In Deinem Fall bieten sich Objekte an.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. nein. Du möchtest Dir ein sinnvolles Datenmodell überlegen. Eine Variable names "textA_de" ist eine Variable names "textA_de" und hat *nichts* mit irgend etwas zu tun, das "textA" heißt. In Deinem Fall bieten sich Objekte an.

      Hmm, Objekte... Und wie verweise ich nun auf diese Objekte? Ich möchte ja nur flexibel bleiben und je nachdem, welche Sprache das Dokument hat, einen anderen String ausgeben.

      1. Hi,

        Hmm, Objekte... Und wie verweise ich nun auf diese Objekte? Ich möchte ja nur flexibel bleiben und je nachdem, welche Sprache das Dokument hat, einen anderen String ausgeben.

        http://de.selfhtml.org/javascript/sprache/objekte.htm#eigene

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
      2. Grütze .. äh ... Grüße!

        Hmm, Objekte... Und wie verweise ich nun auf diese Objekte? Ich möchte ja nur flexibel bleiben und je nachdem, welche Sprache das Dokument hat, einen anderen String ausgeben.

        Ich würde es folgendermaßen organisieren:

          
        var lng = {  
         gruss: {  
          de: "Hallo Welt",  
          en: "Hello world"  
         },  
         frage: {  
          de: "Wie geht es dir?",  
          en: "how are you?"  
         },  
         abschied: {  
          de: "Auf wiedersehen",  
          en: "good bye"  
         }  
        }  
          
        alert(lng.frage.de);  
        alert(lng.abschied.en);  
        
        

        Stichwort Objektliterale

        Hierbei ist es wichtig, die korrekte Kommasetzung zu beachten!


        Kai

        --
        Der vertuschte Gefahrstoff: Dihydrogenmonoxid
        What is the difference between Scientology and Microsoft? One is an
        evil cult bent on world domination and the other was begun by L. Ron
        Hubbard.
        ie:{ fl:( br:< va:) ls:? fo:| rl:? n4:° ss:{ de:] js:| ch:? mo:| zu:|