Christian S.: Welche Sonderzeichen in Variablennamen sind erlaubt?

Hi

wie der Betreff schon sagt...

Was ist erlaubt. Habe neulich so was gesehen:

function $()
{

}

$();

und das geht auch!!

Sieht zunächst komisch aus. Gabs das schon damals in JavaScript 1.0 ??

Was ist noch erlaubt?!

Gruß
Christian

  1. Hallo Christian,

    Was ist noch erlaubt?!

    Laut SELFHTML wäre das nicht erlaubt.
    Außerdem sehe ich keinen Grund warum man entsprechende Sonderzeichen nutzen sollte.

    siehe http://de.selfhtml.org/javascript/sprache/regeln.htm#namen

    Gruß,
    Dodwin

    1. Außerdem sehe ich keinen Grund warum man entsprechende Sonderzeichen nutzen sollte.

      Den Bindestrich "-" hätte man schon erlauben können. Dies würde manche Variable besser gestalten und damit leichter lesbar machen. Aber ist nun leider nicht.

      Gruß Freddy

      1. Hallo Freddy,

        Den Bindestrich "-" hätte man schon erlauben können. Dies würde manche Variable besser gestalten und damit leichter lesbar machen. Aber ist nun leider nicht.

        Meiner Meinung nach macht der Unterstrich "_", welcher erlaubt ist, die Funktionen besser lesbar als der Bindestrich "-".

        Gruß,
        Dodwin

        1. Meiner Meinung nach macht der Unterstrich "_", welcher erlaubt ist, die Funktionen besser lesbar als der Bindestrich "-".

          »»

          Wenn man eine Variable mit mehr als einem Wort ausdrücken möchte, ist der "_" sinnvoller, wenn man jedoch ein zusammengesetzes Wort oder Wort mit einer Zahl lesbarer kombinieren möchte, wäre der "-" sinnvoll. Der Programmierer wäre variabler in der Gestaltung. Das meinte ich damit. Gegen einen "-" würde normalerweise auch nichts sprechen, nur, dass es einfach nicht zugelassen ist.

          1. Hallo,

            Gegen einen "-" würde normalerweise auch nichts sprechen, nur, dass es einfach nicht zugelassen ist.

            Nein? Und wie drückst Du dann Subtraktion aus? Bzw. wie unterscheidest Du den Variablenbezeichner a-b von der Operation a-b?

            viele Grüße

            Axel

  2. Hallo!

    function $()
    {

    }

    $();

    und das geht auch!!

    Es geht vielleicht, aber erlaubt ist es nicht.

    Was ist noch erlaubt?!

    Bei selbst vergebenen Namen gelten folgende Regeln:

    * sie dürfen keine Leerzeichen enthalten
        * sie dürfen nur aus Buchstaben und Ziffern bestehen - das erste Zeichen muss ein Buchstabe sein; es sind Groß- und Kleinbuchstaben erlaubt. Groß- und Kleinschreibung werden unterschieden!
        * sie dürfen keine deutschen Umlaute oder scharfes S enthalten
        * sie dürfen als einziges Sonderzeichen den Unterstrich "_" enthalten
        * sie dürfen nicht mit einem Seite reservierten Wort identisch sein.

    Siehe: http://de.selfhtml.org/javascript/sprache/regeln.htm#namen.

    ciao, ww

    --
    sh:(  fo:|  ch:~  rl:(  br:>  n4:~  ie:%  mo:)  va:)  de:]  zu:)  fl:(  ss:|  ls:~  js:)
    1. Hi,

      also z.B. hier hab ich es gesehen:

      http://www.dustindiaz.com/top-ten-javascript/

      oder in einer großen/bekannten Library namens JQuery:

      http://en.wikipedia.org/wiki/JQuery

      was ist denn solche Syntax:

      $.each([1,2,3], function() {
        document.write(this + 1);
      });

      Gruß
      Christian

      Hallo!

      function $()
      {

      }

      $();

      und das geht auch!!

      Es geht vielleicht, aber erlaubt ist es nicht.

      Was ist noch erlaubt?!

      Bei selbst vergebenen Namen gelten folgende Regeln:

      * sie dürfen keine Leerzeichen enthalten
          * sie dürfen nur aus Buchstaben und Ziffern bestehen - das erste Zeichen muss ein Buchstabe sein; es sind Groß- und Kleinbuchstaben erlaubt. Groß- und Kleinschreibung werden unterschieden!
          * sie dürfen keine deutschen Umlaute oder scharfes S enthalten
          * sie dürfen als einziges Sonderzeichen den Unterstrich "_" enthalten
          * sie dürfen nicht mit einem Seite reservierten Wort identisch sein.

      Siehe: http://de.selfhtml.org/javascript/sprache/regeln.htm#namen.

      ciao, ww

  3. Hi,

    also laut diversen Quellen ist das Dollarzeichen in Variablennamen seit JavaScript 1.1 erlaubt:

    < http://web.dadanini.com:7980/books/DynamicWeb_in_21Tagen/WP_kap09.html>
    (siehe 9.8 Fragen und Antworten)

    http://www.inf-wiss.uni-konstanz.de/People/MB/js/basics/js_basics-57.htm
    http://www.informatik.uni-mainz.de/~barthel/WSGP01/12-6-2001/DHTML2.html

    und weitere bei google.

    MfG!

    1. Hallo!

      Dann müsste man es in SELFHTML aktualisieren. Wäre ein Fall für den Bugtracker.

      ciao, ww

      --
      sh:(  fo:|  ch:~  rl:(  br:>  n4:~  ie:%  mo:)  va:)  de:]  zu:)  fl:(  ss:|  ls:~  js:)
      1. Hallo!

        Dann müsste man es in SELFHTML aktualisieren. Wäre ein Fall für den Bugtracker.

        ciao, ww

        aha, sowas gibts auch!? Mag das vielleicht mal jemand machen, der weiß wie es geht? Hab auch keine Lust mich da jetzt extra für anzumelden...

        Gruß
        Christian

  4. Hi there,

    Sieht zunächst komisch aus. Gabs das schon damals in JavaScript 1.0 ??

    Nein. Das funktioniert erst seit Navigator 3.0 und beim IE seit Version 4.0

    Was ist noch erlaubt?!

    Ob es erlaubt ist oder nicht, ist eine akademische Frage, funktionieren tut es jedenfalls in allen modernen Browsern. Lustigerweise werden in dem "Javascript"-Klassiker von O'Reilly in einem Codebeispiel Variablennamen mit vorangestellten $ verwendet.
    Praktisch kann es auch sein, wenn man in Javascript Funktionen verwendet, die ursprgl. in PHP geschrieben waren. Wenn irgendein Browser das $-Zeichen einmal nicht mehr unterstützen sollte kann man sich immer noch etwas überlegen; wahrscheinlich ist es aber nicht...